This is an opinionated starter skeleton for dry-web projects at Icelab, but you might find it useful too!
It uses:
- dry-web for the core application container and dependency management
- Roda for HTTP handling and routing
- ROM for database persistence
- dry-view for data-oriented view rendering
- dry-validation for data validation (e.g. HTML forms)
- dry-types for shared application type coercions and constraints
- dry-transaction for modelling complex business transactions
- i18n for i18n-ing of things
- Que for background job processing
It also integrates with these 3rd party services:
Read the documentation to learn more about working with apps built from this skeleton.
Create an app from this skeleton using Raygun:
gem install raygun
raygun -p icelab/dry-web-skeleton your_app_name
Then delete this top section of the README.md and fill in the section below with details specific to your app.
Set up the app:
./bin/setup
Run the app with shotgun to reload code on each request:
bundle exec shotgun -p 3000 -o 0.0.0.0 config.ru