- First, a cup of coffee β
- Node JS installed on your host;
- π³ Docker installed on your host β with Docker compose.
In order to clone the project (via HTTPS), run this command:
git clone https://github.com/MattZ6/backstage.git
π‘ SSH URLs provide access to a Git repository via SSH, a secure protocol. If you have a SSH key registered in your Github account, clone the project using this command:
git clone [email protected]:MattZ6/backstage.git
Go to project folder:
cd backstage
Install the project dependencies:
pnpm i
The project has some environment variables so that we can have dynamic settings based on the context in which it is running.
First, create a copy of .env.example
:
cp .env.example .env
Then fill in the missing values in the variables.
β Note that the
DATABASE_DRIVER
&DATABASE_HOST
variables must remain with the same values (because of the docker compose configuration).
To start the services - application and database:
pnpm docker:up
Execute the follow command to create tables and relationships:
pnpm db:migration:create
To stop the services you can run:
pnpm docker:down
Remember that this will cause the services (api and database) to be removed. If you just want to "put the services to sleep", run
docker-compose stop
.
π‘ At this point the application has only unit tests. These tests cover
use cases
,controllers
,decorators
andmiddlewares
, focusing on the business rule. In the near future I plan to include end-to-end tests to shield the application in its total flow.
To run the unit tests, you can execute the following command:
pnpm test
Contributions, issues and new features are always welcome! You can explore them here.
Feel free to submit a new issue with a respective title and description on the the Backstage repository. If you already found a solution to your problem, i would love to review your pull request! Have a look at our contribution guidelines to find out about the coding standards.
Released in 2022 Β© This project is under MIT License.
Made with β€ by Matheus Felipe Zanin.
Get it touch!