A web-based application to catalog music. Built using FastAPI, Angular and PlanetScale.
The backend is built using FastAPI and Uvicorn. It uses PlanetScale as the database.
You can find the backend code in the backend directory.
To know more, check out the backend README.
The frontend is built using Angular and Angular Material. It uses NgRx for state management.
You can find the frontend code in the frontend directory.
To know more, check out the frontend README.
Run the install script to install the dependencies for both the frontend and the backend.
On Linux and Mac:
./scripts/install.shOn Windows:
.\scripts\install.batTo install the development dependencies along with the ones required for execution, run the install-dev script instead.
./scripts/install-dev.shOn Windows:
.\scripts\install-dev.batTo serve the application, run the serve script.
On Linux and Mac:
./scripts/serve.shOn Windows:
.\scripts\serve.batApplication's backend uses the following dependencies:
Application's frontend uses the following dependencies:
All contributions are subjected to a review before they are accepted.
Please use the install-dev script provided and install the pre-commit hooks for development before making any
commits or run the following commands from this directory:
cd backend
pipenv install --categories "dev-hooks"
pipenv run pre-commit install
cd ..Note: This document assumes you have PipEnv and NPM installed on your system globally. If not, check out PipEnv Documentation - Install for PipEnv installation guide and NPM Documentation - Install for NPM installation guide.
These materials may be used for better understanding the source code:
-
Backend
-
Frontend