Welcome to the TERMINAL project! Terminal stands for mulTifunctional databasE foR inforMation gatherIng iN A scientific research Laboratory. This system is build for the purpose of managing the data of a scientific research laboratory, and it is designed to be used by the laboratory's staff, researchers, and students. The system is built using the ASP .NET Core framework, and Angular 18.
To develop the application you must first install the following tools:
- .NET 8 SDK
- Node.js v20.16 (which includes npm)
- Angular CLI v18
- Docker (for running database locally)
- Clone the repository
- Start the database container with docker
docker run -p 5432:5432 -v /path/to/database/volume/:/var/lib/postgresql/data --env POSTGRES_PASSWORD=root --env POSTGRES_DB=terminal --env POSTGRES_USER=root --name terminal.database --pull missing postgres
- Navigate to the
Backend
directory and apply the database migrations
./update-database.sh UserDbContext
./update-database.sh TerminalDbContext
- To run backend, swagger ui is available at http://localhost:5006/swagger/index.html
dotnet run
- Navigate to the
Frontend
directory and install the dependencies
npm ci
- To run frontend, then head to http://localhost:4200
npm run start
If you are using JetBrains IDE's there are run configurations available for the backend, frontend and docker.
- Make sure you are able to build the project
- Navigate to the
Backend
directory and run the tests
dotnet test
- Navigate to the
Frontend
directory and run the tests
npm run test
This project is licensed under the MIT License. See the LICENSE file for more details.