axel-cli
v0.35.1
Published
Axel-cli is the companion app to the [Axel framework](https://github.com/enyosolutions-team/axel-core).
Downloads
285
Readme
axel-cli
Axel-cli is the companion app to the Axel framework.
You can install it with yarn or npm
npm install -g axel-cli
#OR
yarn global add axel-cli
Usage
$ npm install -g axel-cli
$ axel COMMAND
running command...
$ axel (-v|--version|version)
axel-cli/0.35.0 darwin-x64 node-v14.21.2
$ axel --help [COMMAND]
USAGE
$ axel COMMAND
...
Commands
axel admin:eject
axel db:import
axel db:sync
axel generate TARGET
axel generate:api NAME
axel generate:controller NAME
axel generate:hook NAME
axel generate:model NAME
axel generate:route NAME
axel generate:test NAME
axel help [COMMAND]
axel init [NAME]
axel new [NAME]
axel admin:eject
Generate sequelize models and json schemas from database
Generate sequelize models and json schemas from database
USAGE
$ axel admin:eject
OPTIONS
-f, --force Overwrite admin if present before recreating them (Do not use in production...)
-h, --help show CLI help
-n, --name=name Name to use for the admin panel folder
See code: src/commands/admin/eject.ts
axel db:import
Generate sequelize models and json schemas from database
Generate sequelize models and json schemas from database
USAGE
$ axel db:import
OPTIONS
-f, --force Overwrite models if present before recreating them (Do not use in production...)
-h, --help show CLI help
-s, --schemas Also generate schemas
-t, --tables=tables list of tables to import
See code: src/commands/db/import.ts
axel db:sync
Sync sequelize models to the database
Sync sequelize models to the database
USAGE
$ axel db:sync
OPTIONS
-a, --alter Alter table columns if they already exist.
-f, --force Drop tables before recreating them (Do not use in production...
-h, --help show CLI help
-m, --match=match name of database to match (ex: _test)
-s, --silent Do not ask for confirmation
-t, --tables=tables name of table to sync (ex: user)
See code: src/commands/db/sync.ts
axel generate TARGET
Generate various documents for your axel project
Generate various documents for your axel project
USAGE
$ axel generate TARGET
OPTIONS
-f, --force
-h, --help show CLI help
-t, --type= [default: sql] type of project
See code: src/commands/generate.ts
axel generate:api NAME
Generate an api for your axel project
Generate an api for your axel project
USAGE
$ axel generate:api NAME
OPTIONS
-h, --help show CLI help
-i, --interactive
-t, --type=sql|mongo [default: sql] type of database
--fields=fields List of fields to declare in the model
--force Whether to generate schema model also when generating an sql model
--with-schema Whether to generate schema model also when generating an sql model
See code: src/commands/generate/api.ts
axel generate:controller NAME
Generate a controller for your axel project
Generate a controller for your axel project
USAGE
$ axel generate:controller NAME
OPTIONS
-f, --force
-h, --help show CLI help
-t, --type=sql|mongo|bare (required) type of project
See code: src/commands/generate/controller.ts
axel generate:hook NAME
Generate an api hook for your axel project
Generate an api hook for your axel project
USAGE
$ axel generate:hook NAME
OPTIONS
-f, --force
-h, --help show CLI help
See code: src/commands/generate/hook.ts
axel generate:model NAME
Generate a model for your axel project
Generate a model for your axel project
USAGE
$ axel generate:model NAME
OPTIONS
-f, --force
-h, --help show CLI help
-i, --interactive
-t, --types=sql|schema|all (required) type of project
--fields=fields List of fields to declare
--from-sequelize Generate the schema from the sequelize model
See code: src/commands/generate/model.ts
axel generate:route NAME
Generate an api for your axel project
Generate an api for your axel project
USAGE
$ axel generate:route NAME
OPTIONS
-h, --help show CLI help
-s, --secure=secure Add secure policies to the app
See code: src/commands/generate/route.ts
axel generate:test NAME
Generate an api test for your axel project
Generate an api test for your axel project
USAGE
$ axel generate:test NAME
OPTIONS
-f, --force
-h, --help show CLI help
-t, --type=bare|full (required) type of test
See code: src/commands/generate/test.ts
axel help [COMMAND]
display help for axel
display help for <%= config.bin %>
USAGE
$ axel help [COMMAND]
ARGUMENTS
COMMAND command to show help for
OPTIONS
--all see all commands in CLI
See code: @oclif/plugin-help
axel init [NAME]
describe the command here
describe the command here
USAGE
$ axel init [NAME]
OPTIONS
-h, --help show CLI help
See code: src/commands/init.ts
axel new [NAME]
Create a new axel project.
Create a new axel project.
- Download the zip of project
- Unzip it,
- install peer dependencies,
- Place relevant crud controller, auth controller, and Authservices according to the database system.
USAGE
$ axel new [NAME]
OPTIONS
-h, --help show CLI help
-n, --type=mongodb|sql name to print
-s, --silent Silent
DESCRIPTION
- Download the zip of project
- Unzip it,
- install peer dependencies,
- Place relevant crud controller, auth controller, and Authservices according to the database system.
See code: src/commands/new.ts
Features / Todo
[x] Generate models, routes, controllers and api
[x] Init a project
[x] Generate models from the sequelize-auto template
[ ] Hook into sequelize cli commands
[x] use config from rc files to locate folders
[ ] Generate mongo controllers
[x] Generate bare controllers
[x] Generate bare controllers
[ ] Custom models folder
[ ] Better associations How to define relationships => https://docs.forestadmin.com/documentation/v/v6/reference-guide/relationships#lumber-relationship-generation-rules
[ ] use primary from config when generating models