Solomon is a personal finance application designed to help you manage your finances effectively.
The /docs
folder contains detailed documentation about the different aspects of the project.
A transaction in Solomon represents a single instance of money exchange. It could be income, expense, or transfer. For a detailed explanation of the definition and rules of a transaction, please refer to the Transaction Documentation.
For more details about other aspects of the project, please refer to the /docs
folder.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
- 🐍 Python 3.11
- 🐳 Docker / Docker Compose
- 🐘 PostgresSQL 12.1
- Clone the repository:
git clone https://github.com/daniel-leal/solomon-api
- Naviagate to the project directory
cd solomon-api
- Build the docker
make docker-build
- Run the docker application
make docker-up
- Create virtual env
python -m venv .venv
- Activate virtual env
source .venv/bin/activate
- Run the application
make run-local
The application will be available at (http://localhost:8000).
To run the tests, use the following command:
make test
To generate a coverage report use the following command:
make test-coverage
- Running migrations
make migrate
- Create migration
make migration name="<name of migration>"
- Rollback latest migration
make rollback
Please read CONTRIBUTING.md for details on our code of conduct, and the process of submitting pull requests to us.
This project is licensed under the MIT License - see the LICENSE.md file for details