Skip to content

KimiaMontazeri/settle-up

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

Settle Up ๐Ÿงพ

A modern, web-based group expense tracking and debt settlement platform โ€” built with a focus on Persian-speaking users and customized to local needs in Iran ๐Ÿ‡ฎ๐Ÿ‡ท.

โœจ Features

  • ๐Ÿงฎ Smart Debt Simplification using Dinicโ€™s Max Flow Algorithm
  • ๐Ÿ“Š Group-based expense management
  • ๐ŸŒ Bilingual UI: Persian ๐Ÿ‡ฎ๐Ÿ‡ท and English ๐Ÿ‡ฌ๐Ÿ‡ง
  • ๐ŸŽจ Clean, responsive frontend with light/dark theme support
  • โšก Real-time UI updates with React Query
  • ๐Ÿ“ฑ Mobile-friendly and fully responsive
  • ๐Ÿ‡ฎ๐Ÿ‡ท Localized support for the Iranian Rial

๐Ÿ› ๏ธ Tech Stack

Backend

  • Language: Go
  • Framework: Echo
  • ORM: GORM
  • Database: PostgreSQL
  • Authentication: JWT
  • Testing: Go test (unit, integration, performance tests)

Frontend

  • Framework: React
  • State & Caching: React Query
  • Component Library: Mantine
  • Language: TypeScript
  • Theming: Custom light/dark themes with persistence

๐Ÿ“ฆ Setup Instructions

Backend

git clone https://github.com/yourusername/settle-up.git
cd settle-up/back
sudo docker-compose up --build

Frontend

cd settle-up/front
yarn install
yarn dev

๐ŸŒ Future Improvements

  • ๐Ÿ”œ SMS or push notifications
  • ๐Ÿ”œ Add payment integrations
  • ๐Ÿ”œ Expense reports
  • ๐Ÿ”œ Scheduled debts
  • ๐Ÿ”œ Send reminders via SMS or email

๐Ÿ‘ฉโ€๐Ÿ’ป About the Project

This project was developed as my Bachelor's project at Amirkabir University of Technology. It is designed to solve a real-world pain point for Iranian users: group expense tracking in a way that respects local currency, language, and cultural norms.

About

My bachelor's project at Amirkabir University of Technology

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published