Maximize your credit card rewards and savings
CardSense is a full-stack personal finance app that helps you track spending, set monthly budgets, manage credit cards, and choose the best card for each purchase category. One Django backend powers both the Web (React) and Mobile (Expo) clients.
Many cardholders pay more interest than they need to, or use the wrong card for everyday purchases and miss category rewards (groceries, dining, gas, travel, and more). CardSense tackles both problems:
- Budget tracking — set a monthly cap and get alerts as you approach it
- Rewards optimization — log transactions, import CSV, and get card recommendations from your wallet
- Unified account — sign in on Web or Mobile with the same data
| Area | What you can do |
|---|---|
| Dashboard | Month-to-date spending, rewards, budget status, recent transactions |
| Transactions | Add, edit, list; bulk CSV import |
| Budgets | Create monthly budgets; threshold alerts (50% / 70% / 90%) |
| Cards | Browse catalog, add cards to your wallet, view reward rules |
| Optimizer | Category selections and personalized recommendations |
| Assistant | AI chat (Google Gemini) — card picks, rewards tips, wallet-aware Q&A; history syncs across Web & Mobile |
| Analytics | Dashboard metrics via the shared API |
Run each tier in its own terminal from the repository root.
python -m venv .venv
# Windows: .venv\Scripts\activate
# macOS/Linux: source .venv/bin/activate
pip install -r requirements.txt
pip install djangorestframework django-cors-headers python-dotenv google-generativeai
python manage.py migrate
python manage.py runserverAPI: http://127.0.0.1:8000/api · Admin: http://127.0.0.1:8000/admin/
cd web
npm install
npm startOpens http://localhost:3000.
cd mobile
npm install
npx expo startUse Expo Go, an Android emulator, or iOS Simulator. For a physical device, point the app at your machine’s LAN IP (see installation.md).
| Layer | Stack |
|---|---|
| Backend | Python, Django, Django REST Framework, SQLite (dev) |
| Web | React, TypeScript, Create React App |
| Mobile | Expo, React Native, Expo Router, TypeScript |
For mobile: CardSense Figma file
Full guides live under docs/. Start here instead of duplicating setup or API details in this file.
| Document | For |
|---|---|
| docs/installation.md | Project layout, scripts, env vars, setup, troubleshooting |
| docs/usage.md | Sign up, Web & Mobile workflows, feature walkthrough |
| docs/documentation.md | Architecture, data models, REST API |
| docs/preview.md | UI screenshots (Web & Mobile); |
Repository history: This repo combines the archived CardSense_Web and CardSense_App projects into one monorepo. Details: documentation.md §1.4.