Skip to content

bdchang403/SplitWise-App

Repository files navigation

Splitwise App

A modern, premium expense sharing application built with React and Vite. Easily track shared expenses, balances, and settlements with friends.

Features

  • Dashboard: View your total balance, amount you owe, and amount you are owed at a glance.
  • Expense Tracking: Add expenses with multiple people and split costs equitably.
  • Settlements: Simplify debts and see who owes whom.
  • Responsive Design: Works seamlessly on desktop and mobile devices.
  • Dark Mode: Sleek, premium dark mode interface.

Screenshots

Dashboard

Get a quick overview of your financial standing with friends. Dashboard

Add Expense

Easily add new expenses and split them among group members. Add Expense

Getting Started

Prerequisites

  • Node.js (v18 or higher)
  • npm

Installation

  1. Clone the repository:
    git clone https://github.com/bdchang403/SplitWise-App.git
  2. Navigate to the project directory:
    cd SplitWise-App
  3. Install dependencies:
    npm install

Running Locally

Start the development server:

npm run dev

Building for Production

Build the application for production:

npm run build

Usage Examples

Here are detailed step-by-step guides for common scenarios, illustrated with screenshots from the deployed application.

Scenario 1: Group Trip

Situation: User 0 pays $550 for a "Big Party" involving 15 other people (16 total). Result: Each of the 15 participants owes User 0 approximately $36.67.

Step 1: Add Users Add all participants to the group. User List

Step 2: Add Expense Create an expense for "Big Party", amount $550, paid by User 0, and split amongst everyone. Dashboard with Expense

Step 3: View Settlement The app calculates that every other user owes User 0 $36.67. Settlement Report

Scenario 2: Shared Funding

Situation: 3 Creditors each pay $120 to cover expenses for a group of 12 Debtors. Total cost is $360. Result: Each Debtor owes a total of $30. The app optimizes the transactions.

Step 1: Add Expenses

  • Creditor 1 pays $120 for all 12 Debtors.
  • Creditor 2 pays $120 for all 12 Debtors.
  • Creditor 3 pays $120 for all 12 Debtors. Dashboard with Expenses

Step 2: View Settlement Instead of every debtor paying every creditor small amounts, the app optimizes the debts. Each Debtor is assigned to pay a specific Creditor $30, simplifying the repayment process. Optimized Settlement

Deployment

This project is configured for deployment to Google Cloud Run via GitHub Actions. Ensure you have set up Workload Identity Federation and the necessary secrets (GCP_SA_KEY) in your GitHub repository.

Attribution

This application was built completely with Google Antigravity and Gemini 1.5 Pro as a learning project to demonstrate the capabilities of agentic AI coding assistants.

About

Expense Splitting App Built by Antigravity and Gemini 3 Pro

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors