Smart POS & Ledger App

POS App

A comprehensive point-of-sale and business management application covering inventory, receipt generation, stock, expenses, purchases, and barcode scanning for modern retail workflows.

  • React Native
  • Tailwind CSS
  • Flask
  • SQLite
  • Firebase
  • Google Console
Screenshot

Project Overview

Platform

Mobile / Tablet App

Frontend

React Native, Expo

Database

SQLite, Firestore

Authentication

Firebase Auth

The Problem

Small retail businesses struggle with fragmented operations. They often use a mix of manual ledgers for accounting, separate systems for inventory, and disconnected terminals for generating receipts. This leads to inaccurate stock tracking, slow checkout processes, and poor visibility into business expenses and profitability.

The Solution

POS App centralizes these workflows into a single mobile and tablet-optimized application. By integrating a fast, offline-first SQLite database, the app ensures that barcode scanning, receipt generation, and inventory checks happen instantly at the point of sale. Background cloud synchronization ensures that records are safely backed up and accessible.

Key Features

POS Billing & Receipts

Fast checkout process with automatic receipt generation and sales recording.

Inventory & Stock

Real-time stock tracking, product management, and automated low-stock alerts.

Expenses & Purchases

Comprehensive ledger to track business expenses, supplier purchases, and cash flow.

Barcode Scanning

Integrated camera barcode scanning for instant product identification and checkout.

Architecture


React Native (Mobile/Tablet UI)
↓
Expo Camera & File System Modules
↓
SQLite (Local Transactional Data & Indexes)
↓
Firestore (Authenticated Cloud Backups)

Engineering Challenges

Dynamic Template Architecture

Challenge: Large product catalogs originally increased the app bundle size and negatively impacted startup time and memory costs.

Solution: Redesigned the system to use downloadable inventory and template data rather than shipping everything directly in the app bundle. Utilized Firebase Storage to stream and download template JSON payloads, which are then installed transactionally into the local SQLite DB.

Offline Performance & Indexing

Challenge: Guaranteeing instant barcode lookups and receipt generation even with tens of thousands of local inventory records.

Solution: Implemented strict local database indexing on SKUs/barcodes within SQLite, allowing sub-millisecond querying during the checkout process regardless of network state.

Results & Learnings

The POS App demonstrates my ability to engineer complex, operational tools centered around real business workflows. Solving the template downloading and atomic import challenges taught me valuable lessons regarding mobile memory management, JSON payload streaming, and local database optimization.