Cross-Platform Offline-First POS System (Web & Mobile) — image 1 of 7
1 / 7
Web & Mobile App

Cross-Platform Offline-First POS System (Web & Mobile)

A modern, offline-first Point of Sale (POS) system built with Vue 3, TypeScript, and Dexie.js, capable of running seamlessly across modern web browsers and native mobile platforms via Capacitor JS.

About this project

A versatile, offline-first Point of Sale (POS) application engineered with a single codebase to run seamlessly across both web browsers (Desktop/Tablet) and native mobile environments (Android/iOS via Capacitor JS). Key Features & System Architecture: • True Cross-Platform Architecture: Shared Vue 3 + TypeScript codebase deploying natively to Web/PWA and Mobile using Capacitor JS runtime. • 100% Offline-First Data Layer: Zero-latency, browser-native persistent storage powered by Dexie.js (IndexedDB wrapper), enabling full operational independence without an active internet connection. • Dual Checkout Modes: Fast Checkout (instant cash/QRIS calculations) and Open Bill System for table management and staged down payments. • Native & Web Hardware Support: Device camera barcode scanning and thermal receipt printing (58mm/80mm Bluetooth & Web Print API support) with customizable receipt templates. • Security & RBAC: SHA-256 Web Crypto API hashed 6-digit PIN authentication, strict role segregation (Owner/Admin vs. Cashier), and automated 5-minute inactivity session locking. • Dynamic Glassmorphism UI: Responsive modern design utilizing CSS custom properties for instant, real-time theme customization across mobile and desktop screens. • Analytics & Data Export: In-app metrics for COGS (HPP), profit margins, and peak transaction hours with one-click report exports to PDF and Excel/CSV. Role & Responsibilities: - Engineered the end-to-end frontend architecture and client-side database schema using Vue 3 Composition API, Pinia, and TypeScript. - Configured Capacitor JS native bridge abstractions alongside web fallbacks for camera scanning and thermal printing. - Implemented high-performance IndexedDB indexing and reactive state queries for real-time sales reporting and inventory management.

Tech Stack

Vue 3TypeScriptCapacitor JSDexie.jsIndexedDBPiniaViteWeb PWABluetooth Thermal PrinterWeb Crypto API

Client

Personal Project