github.com/jgaskins/wax
main / published Aug 5, 2026 / repository
Code generator for Crystal backend web apps and APIs
wax
Wax is an opinionated Crystal code generator for web applications and APIs. It provides conventions to follow to write your backend Crystal code more quickly using a few different Crystal shards:
- Armature for HTTP routing
- Interro for querying your Postgres database
- Conveyor for background jobs
- Redis as the backing store for caching, background jobs, and sessions
- Dotenv for loading configuration from .env files
Installation
-
Add the dependency to your
shard.yml:dependencies: wax: github: jgaskins/wax -
Run
shards installto installwaxand its dependencies
Usage
From your terminal:
bin/wax generate app YourAppName
Wax will generate all the files your app needs to get started for your app. You can also abbreviate generate as g:
bin/wax g app YourAppName
Generating
You can generate several kinds of files:
| Files | Command |
|---|---|
| App | bin/wax g app OnlineStore |
| Models | bin/wax g model Product id:uuid:pkey title:string description:string |
| Migration | bin/wax g migration add column products active:boolean |
| Routes | bin/wax g route Catalog |
| Components | bin/wax g component DatePicker |
Development
TODO: Write development instructions here
Contributing
- Fork it (https://github.com/jgaskins/wax/fork)
- Create your feature branch (
git checkout -b my-new-feature) - Commit your changes (
git commit -am 'Add some feature') - Push to the branch (
git push origin my-new-feature) - Create a new Pull Request
Contributors
- Jamie Gaskins - creator and maintainer
API
- Wax
TODO Write documentation for
Wax