- TypeScript 42.1%
- Python 38.8%
- Shell 10.4%
- JavaScript 4.6%
- CSS 2.5%
- Other 1.6%
| auth-domain | ||
| browser-domain | ||
| flights-domain | ||
| gateway | ||
| observability | ||
| screen-domain | ||
| subscription-domain | ||
| testing | ||
| .gitignore | ||
| .gitlab-ci.yml | ||
| .pre-commit-config.yaml | ||
| README.md | ||
| README_es.md | ||
| run.sh | ||
fids
Components
auth-domain
Contains user-manager with its database. Handles authentication and authorization of users for the browser-domain.
browser-domain
SPA that has three flows depending on whether the user is an airline, a normal user, or an admin.
flights-domain
Contains flights-information with its database. Handles everything related to flight information (CRUD).
screens-domain
PWA designed to be used in an airport. Managed with a single origin and the query param lastUpdated to request changes. It has a database to cache results and be able to work offline.
subscription-domain
Contains subscription-manager with its database. Handles everything related to user subscription, along with sending notifications.
gateway
API gateway responsible for exposing the services. Handles authentication using the auth-domain.
Usage
First, you'll need to configure the .env files as you prefer. Copy and modify the examples:
cp flights-domain/.env.prod.example flights-domain/.env.prod
cp auth-domain/.env.prod.example auth-domain/.env.prod
cp subscription-domain/.env.prod.example subscription-domain/.env.prod
Then, to start all the components, just run:
./run.sh
Finally, if you want to bring them down:
./run.sh -x
Contributing
First, install the pre-commit hook in your local repository (you probably need to install pre-commit first, see how to do it here):
pre-commit install
Then, you can use the run.sh script to test your changes. For example, if you want to bring down and start a particular service:
./run.sh -d flights -x
./run.sh -d flights
In this case, the -d parameter indicates the type of service (it can be subscription, browser, screen, gateway, flights, auth, or elk), and the -x parameter indicates that you want to bring down the service.
If you want to test a service, you can do so by running:
./run.sh -d flights -t