frost-crystal

The coolest Crystal REST API framework

Frost Crystal: The coolest Crystal API framework

Frost Crystal is a barebones, modular API framework built with Crystal... and it's super cool.

Its structure has been built out to be naturally quite opinionated. That being said however, the project's logic is easy enough to follow and can easily be modified to suit your needs as much of the logic can be found and modified in the helper files.

The project utilizes Toro for modular routing and Granite for substrate-independent persistence.

Getting Started

Start by downloading this repository, note that you must have already have Crystal installed to use it.

Download dependencies with:

$ shards install

To get the project running at localhost:3000 run:

$ crystal src/frost-crystal.cr

And you can test the project with:

$ crystal spec

Examples

TODO: Write usage instructions here

Project Structure

[root]
     |-[config] <- Configuration files for the application database
     |
     |-[spec]
     |      |-[api] <- Version-grouped test files suffixed with "_spec.cr"
     |
     |-[src]
     |     |-[api] <- Version-grouped API controller route files suffixed with "_api.cr"
     |     |
     |     |-[helpers] <- Helper files suffixed with "_helper.cr"
     |     |
     |     |-[models] <- Model files
     |
     |-(Dockerfile) <- A dockerfile that can generate a runnable container for prod
     |
     |-(shard.yml) <- The Crystal-lang dependency list

Contributing

  1. Fork it from here
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Add some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create a new Pull Request

Contributors

  • jonjondev Jonathan Moallem - creator, maintainer

License

This project is available as open source under the terms of the MIT License.

Repository

frost-crystal

Owner
Statistic
  • 4
  • 0
  • 1
  • 0
  • 5
  • over 1 year ago
  • July 16, 2018
License

MIT License

Links
Synced at

Thu, 21 Nov 2024 23:07:32 GMT

Languages