~/dev.jaspreetsingh
AI / SaaS

PetsPOS — Multi-Platform Point of Sale

AI-enhanced POS system for US pet businesses — multi-organisation, cross-platform (desktop, web, mobile), with stock analytics and AI-powered reorder predictions.

FlutterDartSupabasePostgreSQLAI Analytics
↗ Live Demo

Problem

Pet store owners in the US were managing inventory manually — frequent stockouts on popular items, overstock on slow movers, and no cross-location visibility for multi-store operators.

Solution

A full POS system covering sales, inventory, and reporting — running on desktop, web, and mobile from a single Flutter codebase. Multi-organisation support for chains. AI-powered stock analytics surface reorder predictions and stockout alerts before they become a problem.

System Architecture

Flutter for cross-platform UI (desktop, web, iOS, Android). Supabase for multi-tenant data, auth, and realtime stock updates. PostgreSQL for transactions, inventory, and organisation data. AI analytics layer for stock trend analysis and reorder predictions.

# system diagram

Desktop · Web · iOS · Android

└─ Flutter (single codebase)

├─ Supabase → multi-org data + auth

├─ PostgreSQL → transactions, inventory

└─ AI analytics → stock predictions + alerts

DevOps & Deployment

Deployment

Supabase (backend) · Web · Desktop · App Store · Play Store

CI/CD

GitHub Actions with platform-specific build targets

Challenges

Building a POS that works reliably offline (desktop) and online (web/mobile) with consistent data sync. Implemented an offline-first transaction queue that syncs when connectivity is restored.

Key Learnings

Flutter for desktop is underrated — the same codebase that runs on mobile runs on Windows and macOS with minimal adaptation. For a POS system, this dramatically reduced development and maintenance cost.


TrainEasy Mobile — Fitness & Exercise AppVoicify — Speech to Text Mobile App

Have a project in mind? Let's talk.

Open to full-time remote roles, freelance projects, and interesting collaborations. I'll get back within 24 hours.

new-message.md