How raniel-roque/freshenuppos works
FreshenUp POS is an offline point-of-sale app for managing a menu, building and processing dine-in or take-out orders, reviewing sales, and administering account and database settings. The user enters through the React app, which coordinates login and feature screens; order and catalog actions reach the database service, while reports and settings use callbacks routed through the app. Persistence is platform-dependent: the service supports Capacitor SQLite on Android and Electron IPC on desktop. Trial status is checked separately at startup. Some feature wiring and platform-specific paths are documented but not shown in the sampled excerpts.
Main entry points: App.tsx App coordinator · trial.ts Trial status · database.ts Database operations · main.tsx React entry
Components 16
App shell
- React entry
src/main.tsx - App coordinator
src/App.tsx
POS workflows
- Login
src/components/Login.tsx - Menu management
src/components/ItemManagement.tsx - Order checkout
src/components/OrderManagement.tsx - Pending orders
src/components/PendingOrders.tsx - Sales reports
src/components/SalesReport.tsx - Settings and backup
src/components/Settings.tsx
Data services
- Trial status
src/services/trial.ts - Database operations
src/services/database.ts
Platform storage
- Capacitor SQLite
- Electron IPC host
electron/main.js - Desktop SQLite file
- Trial preferences
- Browser local storage
Other components
- POS operator
Connections 21
- POS operator → React entry: opens app
- React entry → App coordinator: renders
- App coordinator → Login: shows login
- App coordinator → Menu management: shows menu
- App coordinator → Order checkout: shows orders
- App coordinator → Pending orders: shows pending
- App coordinator → Sales reports: shows reports
- App coordinator → Settings and backup: shows settings
- App coordinator → Database operations: calls
- App coordinator → Trial status: checks trial
- Login → App coordinator: submits credentials
- Menu management → App coordinator: sends item actions
- Order checkout → App coordinator: sends order actions
- Pending orders → App coordinator: requests order actions
- Sales reports → App coordinator: requests report data
- Settings and backup → App coordinator: requests settings actions
- Database operations → Capacitor SQLite: queries on Android
- Database operations → Electron IPC host: invokes IPC on desktop
- Electron IPC host → Desktop SQLite file: reads and writes
- Trial status → Trial preferences: stores trial state
- Trial status → Browser local storage: uses fallback