Splitly – a real‑time web app for fair restaurant bill splitting with tip distribution, built in ASP.NET Core and React.
- Create and join temporary bill sessions (persisted for one week).
- Assign receipt items to diners, with support for shared items via percentage splits.
- Apply tips proportionally or evenly across all diners.
- Real‑time collaboration powered by SignalR.
- Relational database with EF Core for reliable storage and queries.
- Backend: ASP.NET Core (C#), Entity Framework Core, SignalR
- Frontend: React
- Database: PostgreSQL
- Real‑Time: WebSockets via SignalR
Controllers/– API endpointsHubs/– SignalR hubs for live updatesEntities/– EF Core modelsServices/– Business logic (bill calculation, session management)Data/– DbContext and migrations
- Clone the repository:
git clone https://github.com/yourusername/splitly.git
- Navigate to the backend project and install dependencies:
cd Splitly.Api dotnet restore - Apply migrations and update the database:
dotnet ef database update
- Run the backend:
dotnet run
- Navigate to the frontend project and install dependencies:
cd splitly-frontend npm install npm start
POST /sessions– create a new sessionGET /sessions/{id}– retrieve session detailsPOST /sessions/{id}/items– add itemsPOST /sessions/{id}/assignments– assign items to dinersGET /sessions/{id}/summary– calculate totals per diner
- Name: Splitly
- Tagline: Fair bills, shared easily.