Thanks to visit codestin.com
Credit goes to github.com

Skip to content

AshishKapoor/fintrack

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

34 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸ’° Fintrack

Fintrack is a privacy-first, self-hostable personal finance tracker built by Sannty. Designed for individuals who want to take full control of their income, expenses, budgets, and financial goals without relying on third-party services.

[Self Host] Admin Credentials (change me!)

URL: http://localhost:5173

email: [email protected]
password: fintrack

Screenshot

screenshot

πŸš€ Features

  • πŸ“Š Track income and expenses with ease
  • 🧾 Add custom categories and tags
  • πŸ“… View transactions by day, week, or month
  • πŸ“ˆ Budget planning and progress tracking
  • πŸ”’ 100% self-hosted – your data, your server
  • πŸ“¦ Export data as CSV or JSON
  • πŸ‘€ Multi-user support (optional)
  • πŸŒ— Light/Dark mode UI
  • πŸ“± Responsive design (mobile + desktop)
  • πŸ”Œ API-first architecture

πŸ› οΈ Tech Stack

πŸ“± Web (Frontend)

  • Framework: React 18
  • Styling: TailwindCSS
  • State Management: Zustand
  • Build Tool: Vite
  • Package Manager: pnpm

πŸ”§ API (Backend)

  • Framework: Django + Django REST Framework
  • Database: PostgreSQL
  • Package Manager: Poetry
  • Authentication: JWT-based

🐳 Infrastructure

  • Containerization: Docker & Docker Compose
  • Development: Hot-reload enabled for both frontend and backend

πŸ“ Project Structure

fintrack/
β”œβ”€β”€ api/                # Django backend
β”‚   β”œβ”€β”€ app/            # Django project settings
β”‚   β”œβ”€β”€ pft/            # Main Django app
β”‚   └── manage.py       # Django CLI
β”œβ”€β”€ web/                # React frontend
β”‚   β”œβ”€β”€ app/            # Application source
β”‚   β”œβ”€β”€ public/         # Static assets
β”‚   └── schema/         # API schema
└── README.md

🏁 Getting Started

πŸ“‹ Prerequisites

πŸ”§ Setup Instructions

Option 1: Using Docker (Recommended)

# Clone the repository
git clone https://github.com/ashishkapoor/fintrack.git
cd fintrack

# Copy environment files
cp api/.env.example api/.env
cp web/.env.example web/.env

# Start the services
docker compose up --build

The application will be available at:

Option 2: Manual Setup

  1. Clone the repository:
git clone https://github.com/ashishkapoor/fintrack.git
cd fintrack
  1. Setup API (Backend):
cd api

# Install poetry if not already installed
curl -sSL https://install.python-poetry.org | python3 -

# Install dependencies
poetry install

# Setup environment variables
cp .env.example .env

# Run migrations
poetry run python manage.py migrate

# Start the development server
poetry run python manage.py runserver
  1. Setup Web (Frontend):
cd web

# Install dependencies
pnpm install

# Setup environment variables
cp .env.example .env

# Start the development server
pnpm dev

βš™οΈ Configuration

API Environment Variables

# api/.env
DEBUG=True
SECRET_KEY=your_secure_secret_key
DATABASE_URL=postgres://user:password@localhost:5432/fintrack
ALLOWED_HOSTS=localhost,127.0.0.1
CORS_ALLOWED_ORIGINS=http://localhost:5173

Web Environment Variables

# web/.env
VITE_API_URL=http://localhost:8000

πŸ§ͺ Tests

API Tests

cd api
poetry run python manage.py test

Web Tests

cd web
pnpm test

πŸ“€ API Documentation

The API documentation is available at:


🀝 Contributing

Contributions, issues, and feature requests are welcome!
Feel free to fork and submit a pull request.


πŸ“„ License

MIT License Β© 2025 Sannty


πŸ’‘ Inspiration

FinTrack was built to give privacy-conscious users a simple but powerful way to manage their finances independently, free of subscription fees or vendor lock-in.


πŸ™Œ Support

If you find FinTrack useful, consider giving a ⭐ on GitHub or sharing it with others!

Star History

Star History Chart

About

FinTrack by Sannty | Your financial success starts here

Topics

Resources

License

Contributing

Stars

Watchers

Forks

Releases

No releases published

Packages