Raqeem is a personal finance app with a native Android client, a React web client, and a Supabase backend for auth, sync, storage, and AI-backed insights.
- Web app: https://mhmudxnasr.github.io/raqeem/#/
- Android release: GitHub Releases
android/: Native Android app built with Kotlin and Jetpack Composeweb/: React + Vite + Tailwind web clientbackend/supabase/: Supabase SQL migrations and Edge Functionsbackend/scripts/: One-off migration utilities, including the Notion import scriptdocs/: Product, design, data model, and feature documentationskills/: Project-specific agent guidance files
Raqeem is focused on day-to-day personal finance tracking with:
- Email/password auth through Supabase
- Accounts, balances, and transaction history
- Budgets and savings goals
- Analytics dashboards and charts
- AI insights and finance chat through a Supabase Edge Function proxy
- Realtime sync on web and sync infrastructure for Android
- Android biometric/app-lock support
The web app currently exposes dashboard, transactions, accounts, analytics, budgets, goals, and settings flows. The backend also includes subscriptions and settings tables that support the broader product roadmap.
- Android: Kotlin, Jetpack Compose, Room, WorkManager, Hilt
- Web: React 18, Vite, Tailwind CSS, Zustand, Recharts, Supabase JS
- Backend: Supabase Postgres, Realtime, Auth, Storage, Edge Functions
- AI:
backend/supabase/functions/ai-insightsproxies grounded finance prompts to Groq without exposing the API key to the client
-
Create
web/.env.localwith:VITE_SUPABASE_URLVITE_SUPABASE_ANON_KEY
-
Install dependencies:
cd web npm ci -
Start the dev server:
npm run dev
- Open
android/local.properties - Add:
SUPABASE_URL=...SUPABASE_ANON_KEY=...
- Release signing values are also read from
local.properties - Build from Android Studio or with Gradle from
android/
- SQL schema changes live in
backend/supabase/migrations/ - The AI function lives in
backend/supabase/functions/ai-insights/index.ts - The optional Notion migration utility is in
backend/scripts/migrate-notion.mjs
- The web app is deployed to GitHub Pages
- GitHub Pages is configured to deploy from GitHub Actions on
main - The production build uses the repository subpath base
/raqeem/
- Generated artifacts such as
web/dist, Android build logs, and Supabase temp files are intentionally not tracked - Some root-level XML files are preserved as design/export artifacts from the app exploration work