Skip to content

devkamanish/PocketPilot

Repository files navigation

PocketPilot πŸ’°

Cross-platform personal finance mobile app built with React Native and Supabase.

PocketPilot helps users track expenses, manage budgets, monitor subscriptions, and receive smart spending insights through a clean mobile-first experience.

Features

Expense Tracking

  • Create, edit, delete expenses
  • Categorize spending
  • Transaction history
  • Search and filtering

Budget Management

  • Monthly budget planning
  • Category spending limits
  • Burn-rate monitoring
  • Overspending alerts

Subscription Manager

  • Track recurring subscriptions
  • Renewal reminders
  • Subscription cost monitoring

Smart Insights

  • Rule-based spending analysis
  • Financial health indicators
  • Spending trend detection

Offline Support

  • Offline expense entry
  • Sync queue when connection returns
  • Local persistence with AsyncStorage

Security

  • User authentication
  • Secure session storage
  • Row Level Security (RLS)
  • User data isolation

Tech Stack

Frontend

  • React Native
  • Expo
  • TypeScript

State Management

  • Zustand

Backend

  • Supabase
  • PostgreSQL
  • Supabase Auth

Mobile Features

  • Expo Notifications
  • SecureStore
  • AsyncStorage

Visualization

  • Victory Native Charts

Testing

  • Jest
  • React Native Testing Library

Architecture

React Native App
   ↓

State Layer (Zustand)

   ↓

Service Layer

   ↓

Supabase Backend

β”œβ”€β”€ Auth
β”œβ”€β”€ Database
β”œβ”€β”€ Security (RLS)
└── Realtime

Demo

Web Preview

Live Demo:https://pocket-pilot-two.vercel.app/

Mobile Download

Latest APK: https://github.com/devkamanish/PocketPilot/releases/tag/v1.2.0 ---

Screenshots

image image image image image
  • Dashboard
  • Expense Tracking
  • Budget Analytics
  • Subscription Reminders

Installation

Clone repository

git clone https://github.com/devkamanish/pocketpilot.git
cd pocketpilot

Install dependencies

npm install

Configure environment Create .env

EXPO_PUBLIC_SUPABASE_URL=your_url
EXPO_PUBLIC_SUPABASE_ANON_KEY=your_key

Run app

npm run start

Supabase Setup

Create a free Supabase project. Run:

supabase/schema.sql

Enable:

  • Email/password authentication
  • Row Level Security on:
  • expenses
  • budgets
  • subscriptions
  • profiles

Testing

npm test

Roadmap

Planned improvements

  • AI-powered spending insights
  • Bank transaction import
  • Shared family budgets
  • Savings goal tracking
  • Advanced analytics

Production Features

  • Offline-first architecture
  • Push notifications
  • Secure storage
  • Data sync queue
  • Error handling
  • Unit testing
  • CI/CD ready

Release Notes

Contributing

Pull requests welcome.

For major changes, open an issue first.