Skip to content

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

2 Commits

Folders and files

Repository files navigation

Ledge

Split smarter — a social receipt-splitting app: scan receipts, assign items, split fairly, track balances, and settle with common payment methods.

Monorepo layout

Path Description
apps/api Node.js + Express API (TypeScript, MongoDB, Redis)
apps/mobile Expo (React Native) client with Expo Router
config/ Shared app constants (name, tagline, API URL pattern)

Prerequisites

  • Docker and Docker Compose
  • Node.js 20+ (for local API or mobile without only-Docker workflows)
  • For OCR: an Anthropic API key (ANTHROPIC_API_KEY) when using Claude Vision

Environment

  1. Copy env templates and fill in secrets:

    cp .env.example .env
    cp apps/api/.env.example apps/api/.env
  2. Root .env can supply variables referenced by Compose (for example ANTHROPIC_API_KEY).

Run the stack (API + MongoDB + Redis)

From the repository root:

docker compose up --build
  • API: http://localhost:3001
  • MongoDB: localhost:27017 (see docker-compose.yml for credentials)
  • Redis: localhost:6379 (password in Compose)

Seed demo data

With API dependencies available (for example after containers are up, or with local .env pointing at Mongo):

cd apps/api
npm install
npm run seed

Mobile app (Expo)

cd apps/mobile
npm install
npm run start

Point the app at your API using API_BASE_URL / mobile config as documented in config/app.config.ts and the mobile config/ folder.

Scripts (reference)

Location Command Purpose
apps/api npm run dev API with nodemon (local Node)
apps/api npm run build TypeScript compile
apps/api npm run seed Load seed data
apps/mobile npm run start Expo dev server
apps/mobile npm run ios / android Open simulator / device

License

Private / team use unless otherwise specified.

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages