FINANCE
FINANCE is a simple yet powerful, self-hosted personal finance tracking web app with the ability to parse SMS transactions and generate very useful insights about your money. It's also powered by ChatGPT!
💰 Sponsors
Support this project by becoming a sponsor ❤️. Your logo will show up here with a link to your website. Become a sponsor
🛠 Features
- Self-hosted - full control over your data privacy
- Parse SMS bank transactions
- Powerful AI model - FinanceGPT 🔥 - DEMO
- Detailed analysis of income and expenses
- Detailed monthly report of income and expenses - see example
🎮 Demo
Try the app with live demo.
▶️ Installation
Docker Installation
- Method one (recommended)
git clone https://github.com/saleem-hadad/finance && cd finance
make build # build the docker image
make run # the same as docker-compose up -d
# wait for a few seconds to allow the DB to finish the setup then run
make install # only for the first time
2. Method two (using docker-compose public hosted docker image)
First, create a docker-compose.yml
file
version: '3'
services:
app:
image: 'salee2m1/finance:1.9.0'
ports:
- "80:80"
networks:
- finance
depends_on:
- mysql
environment:
OPENAI_API_KEY: 'YOUR_OPENAI_API_KEY'
mysql:
image: 'mysql/mysql-server:8.0'
ports:
- '3306:3306'
environment:
MYSQL_ROOT_PASSWORD: 'root'
MYSQL_ROOT_HOST: "%"
MYSQL_DATABASE: 'finance'
MYSQL_USER: 'finance'
MYSQL_PASSWORD: 'finance'
MYSQL_ALLOW_EMPTY_PASSWORD: 1
volumes:
- 'financemysql:/var/lib/mysql'
networks:
- finance
healthcheck:
test: ["CMD", "mysqladmin", "ping", "-proot"]
retries: 3
timeout: 5s
networks:
finance:
driver: bridge
volumes:
financemysql:
driver: local
Then, inside the same directory run
docker-compose up -d
# wait for a few seconds to run the DB then run
docker-compose run app php artisan migrate
docker-compose run app php artisan finance:install
Once done, visit the app on http://localhost
Read full documentation
JetBrains Sponsorship
Thank you, JetBrains for sponsoring the license ❤️
Get $200 DigitalOcean Credit
Project Visualization
🪚 Built with
- Laravel
- Inertia & ReactJs
- GraphQL
- MySQL
- Docker
🔖 License
This project is licensed under the MIT License - see the LICENSE.md file for details.