Skip to content

KimiaMontazeri/settle-up

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

108 Commits
 
 
 
 
 
 
 
 
 
 

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 thesis project at Amirkabir University of Technology

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors