wax

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

  1. Add the dependency to your shard.yml:

    dependencies:
      wax:
        github: jgaskins/wax
    
  2. Run shards install to install wax and 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

  1. Fork it (https://github.com/jgaskins/wax/fork)
  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

Repository

wax

Owner
Statistic
  • 1
  • 0
  • 0
  • 0
  • 11
  • 18 days ago
  • November 4, 2023
License

MIT License

Links
Synced at

Sun, 22 Dec 2024 02:05:13 GMT

Languages