Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/aybruhm/fastapi-ledger-system
Have you ever been curious as to how fintech applications are built? This system demonstrates the basic functionalities of a fintech product.
https://github.com/aybruhm/fastapi-ledger-system
docker docker-compose fastapi fastapi-sqlalchemy postgres python3
Last synced: 9 days ago
JSON representation
Have you ever been curious as to how fintech applications are built? This system demonstrates the basic functionalities of a fintech product.
- Host: GitHub
- URL: https://github.com/aybruhm/fastapi-ledger-system
- Owner: aybruhm
- License: cc0-1.0
- Created: 2022-12-03T10:02:21.000Z (about 2 years ago)
- Default Branch: main
- Last Pushed: 2023-05-28T13:13:43.000Z (over 1 year ago)
- Last Synced: 2024-12-30T15:17:13.968Z (11 days ago)
- Topics: docker, docker-compose, fastapi, fastapi-sqlalchemy, postgres, python3
- Language: Python
- Homepage:
- Size: 136 KB
- Stars: 14
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# FastAPI-Ledger
Have you ever been curious as to how fintech applications are built? This system demonstrates the basic functionalities of a fintech product.
## Technologies
- FastAPI
- PostgreSQL
- SQLAlchemy (ORM)
- Docker and Docker-compose
- Alembic (Database migrations)
- Pytest (Unit testing)## Problem Statement
Build a ledger system with the following functionalities:
- [x] ( Deposit Money ) Credit X amount to one of the user’s account
- [x] ( Withdraw Money ) Debit X amount from one of the user’s account
- [x] Transfer money from one account to another account for a single user
- [x] Transfer money from one account of one user to another user
- [x] Get balance for a user
- [x] Get balance for an account of a user
- [x] User can have (10) maximum wallets## Getting Started
To get the service up and running, follow the steps below:
1). Run the commands below in your terminal:
```bash
git clone [email protected]:aybruhm/fastapi-ledger-system.git
```2). Change directory to fastapi-ledger-system:
```bash
cd fastapi-ledger-system
```3). Rename the `.env.template` file to `.env` and update the values.
4). Build and run the service with:
```bash
docker-compose up --build
```The service will build and run on port `8080`.
5). Launch a new terminal session and run the following commands:
```bash
chmod +x run-migrations.sh
``````bash
./run-migrations.sh
```The above commands would activate the script file and when ran- will make database migrations for you automatically.