api

Version, currently main branch1 version
  • main branchlatestJun 21, 2023

github.com/aristotelesbr/crystal-api

Simple example API for didactic purposes.

2 stars
0 dependents
License: not declared

Installation

# Add this to your shard.yml
dependencies:
  api:
    github: aristotelesbr/crystal-api
    branch: main

main is a branch, not a release, so this tracks it rather than pinning a version.

Then run:

shards install

shard.yml

Crystal
no constraint declared

Dependencies

Runtime Dependencies

  • pg~> 0.5github: will/crystal-pg
  • sam0.4.2github: imdrasil/sam.cr
  • kemal~> 1.4.0github: kemalcr/kemal
  • jennifer~> 0.13.0github: imdrasil/jennifer.cr

README

Crystal API

Installation

$ shards install

List tasks

You can see the list of tasks like this:

$ crystal sam.cr help

Name                 Description
------------------ | ---------------------------------------------
help               | Prints description for all tasks
test               |
generate:makefile  | Generates makefile extension. Now command cou
                   | ld be executed via `make sam your:command arg
                   | ument`
generate:migration | Generates migration template. Usage - generat
                   | e:migration <migration_name>
generate:model     | Generates model and migrations template. Usag
                   | e - generate:model <ModelName>
db:migrate         | Will call all pending migrations
db:step            | Invoke next migration. Usage: db:step [<count
                   | >]
db:rollback        | Rollback migration. Usage: db:rollback [v=<mi
                   | gration_exclusive_version> | <count_to_rollba
                   | ck>]
db:drop            | Drops database
db:create          | Creates database
db:seed            | Populate database with default entities.
db:setup           | Runs db:create, db:migrate and db:seed
db:version         | Prints version of the last run migration
db:schema:load     | Loads database structure from the structure.s

Database config

Change your database settings in config/database.yml and run:

$ crystal sam.cr db:create

After that you can run migrations:

$ crystal sam.cr db:migrate