Skip to content

wena04/RICH

Repository files navigation

Rich记账 MVP

Personal finance iOS app inspired by "RICH 记账" — offline-first, privacy-focused.

iOS SQLite Privacy

Features

  • Calendar-first home — Month view with daily transaction list
  • Amount-first entry — Custom numpad, category icon grid
  • Category pie chart — Visualize spending by category
  • Monthly trends — Expense vs income over time
  • Accounts — Cash, bank, credit, stored value, investment
  • Import/Export — CSV (v1 legacy, v2 extended) + database file

Tech Stack

Layer Technology
Framework React Native + Expo
Language TypeScript
Database SQLite (local-only)
Navigation Expo Router
UI Custom (matching RICH app design)

Privacy

This app keeps your data private by default:

  • ✓ No backend servers
  • ✓ No cloud sync
  • ✓ No analytics or tracking
  • ✓ Data stays on-device unless you export

Getting Started

# Install dependencies
npm install

# Start Expo dev server
npm run start

# Run on iOS Simulator
npm run ios

Note: This app uses expo-sqlite which requires iOS/Android. It does not work in the web browser.

Project Structure

app/                    # Expo Router screens
├── (tabs)/             # Tab navigation (Home, Charts)
├── transaction/        # Add/edit transaction
├── accounts.tsx        # Account management
├── categories.tsx      # Category management
└── import-export.tsx   # Data portability

src/                    # Business logic
├── db/                 # SQLite + migrations
├── domain/             # TypeScript types
├── features/           # Charts, import/export
└── utils/              # Helpers

docs/                   # Documentation
├── REQUIREMENTS.md     # Goals, scope, acceptance criteria
├── PRODUCT.md          # UX design, screens, flows
├── TECHNICAL.md        # Architecture, data model, formats
└── PROGRESS.md         # Implementation status

Sample Data

The app automatically seeds 37 demo transactions on first run, so you can explore all features immediately.

Demo data includes:

  • 3 accounts (现金, Chase, 微信)
  • 8 categories (餐饮, 交通, 购物, 娱乐, 日用, 医疗, 工资, 兼职)
  • Transactions spanning the last 30 days

Additional sample CSV for testing imports: data/sample.csv

Data Safety

Your real finance data must NOT be committed to git.

The .gitignore protects against accidental commits:

  • All CSV files except data/sample.csv
  • SQLite databases (.db, .sqlite)
  • Export/backup files

Documentation

Doc Description
REQUIREMENTS.md Goals, scope, acceptance criteria
PRODUCT.md UX design, screens, navigation
TECHNICAL.md Architecture, data model, formats
PROGRESS.md Implementation status

License

MIT

About

This is a mobile app to track your expenses

Resources

License

Contributing

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors