hassankhan/ultron

An opinionated, lightweight RESTful API that prefers convention over configuration


Keywords
orm, rest, api
License
MIT

Documentation

Ultron

Ultron is an opinionated, lightweight RESTful API built using Slim, Idiorm and Fractal.

It allows you to create a RESTful API that maps URLs directly onto your database. This is accomplished by enforcing naming conventions, which in turn, saves you rewriting heaps of boilerplate code.

For example, if you were to visit http://your.site.com/api/author, Ultron will check your database for a table named author and output results in JSON.

Project Setup

To create your own project, type composer create-project hassankhan/ultron-skeleton <path>.

To work on Ultron, clone the project, then type vagrant up in the terminal at the project root. You should now be able to access the project at http://10.0.5.5.

You can also add 10.0.5.5 ultron.local to your hosts file.

Documentation

Documentation can be found on the GitHub Pages for this repo. API documentation can be found here.

Testing

Ultron uses Codeception for tests. To run them, type vendor/bin/codecept run.

If you have a bug, a test for the bug condition would be highly useful. A pull request would be even more so.

Deploying

How to setup the deployment environment

  • Required heroku addons, packages, or chef recipes.
  • Required environment variables or credentials not included in git.
  • Monitoring services and logging.

How to deploy

Troubleshooting & Useful Tools

Running tests:

Unit tests: vendor/bin/codecept run unit

Generating API documentation:

vendor/bin/sami.php update config.sami.php

Contributing changes

  • PSR-2 code style
  • If you have a PR, please send it to the 'develop' branch.

License

MIT: http://hassankhan.mit-license.org/