1.0.0-alpha18-hotfix • Published 5 years ago

@uklfr/formed-cli v1.0.0-alpha18-hotfix

Weekly downloads
24
License
MIT
Repository
-
Last release
5 years ago

FORMED-cli

This cli tool leverages and eases the use of the FORMED framework.

Usage concept

Instead of managing api and app separately, with formed-cli it is possible to transport all information of the entire application in one file. The cli offers tools to leverage development and deployment.

Installation

npm install -g subzero-cli

New Project

mkdir somepath && cd somepath
formed config
formed download
formed install
stmux [ "formed start dev backend" .. "formed start dev frontend" ]

Deployment

Backend

First, when your development environment is working, you can build the application's docker container:

formed build backend

We assume, that your local computer has access to the database. Then, it depends on your project. If it is the initial deploy, you need to run

subzero migrations add --no-diff --note "initial dataset" data

inside your api folder (where .env is located at) while the dev-system is up and running. This generates sql-files and the folder tree db/migrations/.

If you changed your dev system, which already got deployed, just run

subzero migrations add --note "some note" some_feature

This generates a sql-diff inside db/migrations/deploy/. Please double check the generated files prior deployment.

Now generate your deploy configuration of the server by running

formed config deploy

Here, we assume, you already managed to connect to the server you're going to deploy the application and that this particular server user can run docker-compose. Read here how to setup ssh keys.

Next, just run

formed deploy backend

Now you should be done and the new backend code is online.

Frontend

formed build frontend

Here again, we assume you have ssh access to the server and that your formed configs are setup properly. Then simply run

formed deploy frontend

Split Screen

In order to run split screen you can use screen/tmux. We recommend stmux. Simply install it by

    npm i stmux -g

Afterwards, you can run the backend and frontend development output inside one terminal window

    stmux [ "formed start dev backend" .. "formed start dev frontend" ]

Development

If you'd like to change this code, use npm link to use the source code to run. With npm run watch activate transpilation on change.

On your server you need to install:

  • docker
  • docker-compose

The client, on which the application is build, needs:

  • docker
  • nodejs/npm
  • postgresql-client