Skip to content

posopen/www

Repository files navigation

posOpen logo

posOpen

An open, modular, offline-capable Point-of-Sale platform.
Built for small businesses. Designed for emerging markets. Engineered to scale.


Why posOpen exists

Most POS systems are:

  • vendor-locked
  • over-engineered
  • cloud-dependent
  • expensive to leave

posOpen is different.

posOpen is a platform, not a monolith.

It is designed so that:

  • merchants can own their system
  • developers can extend it cleanly
  • operators can run offline without fear
  • integrations do not require rewrites

Quietly powerful. Intentionally simple.


Core Principles

  • Open standards over proprietary silos
  • Configuration over custom code
  • Offline-first by design
  • API-first, UI-second
  • Reliability beats cleverness
  • Shipping beats perfection

What this repository contains

This repository hosts the web frontend and UI system for posOpen.

It includes:

  • Marketing landing pages
  • Application shell (PWA-ready)
  • POS UI components
  • Design tokens & theming
  • Component documentation

Backend services, payments, and integrations live in separate repos by design.


MVP Functional Scope

Core POS Operations

  • Product & pricing management
  • Sales transactions
  • Tax / VAT handling (region-aware)
  • Discounts & basic promotions
  • Digital & printable receipts

Inventory

  • Stock tracking
  • Manual adjustments
  • Low-stock alerts

Payments

  • Cash
  • Modular payment provider abstraction
  • Transaction logging & reconciliation

Users & Roles

  • Cashier / Manager / Admin
  • Role-based permissions
  • Session tracking

Reporting

  • Daily sales summaries
  • Cash-up reports
  • Exportable CSV / JSON

Offline-First Architecture

posOpen is designed for unreliable connectivity.

  • Transactions work offline
  • Receipts print offline
  • Data syncs when connectivity returns
  • Conflicts are auditable, not silent

Offline is not a fallback. It is a first-class state.


Tech Stack (Frontend)

  • Framework: React + TypeScript
  • UI: Token-based design system
  • Architecture: Component-driven
  • Theming: Light / Dark mode
  • POS-ready: Tablet & desktop layouts
  • Print: Thermal-safe receipt styles
  • Deployment: Cloud, on-prem, hybrid

Repository Structure

posopen/www
├── public/
│   └── brand/
│       └── logo-icon.svg
├── src/
│   ├── components/
│   │   ├── Header.tsx
│   │   ├── POSHeader.tsx
│   │   ├── Footer.tsx
│   │   ├── CashierScreen.tsx
│   │   └── Button.tsx
│   ├── layout/
│   │   └── Layout.tsx
│   ├── tokens/
│   │   ├── colors.ts
│   │   ├── spacing.ts
│   │   └── typography.ts
│   ├── docs/
│   │   └── components.tsx
│   └── styles/
│       └── receipt.css
└── README.md
=======
This is a [Next.js](https://nextjs.org) project bootstrapped with [`create-next-app`](https://nextjs.org/docs/app/api-reference/cli/create-next-app).

## Getting Started

First, run the development server:

```bash
npm run dev
# or
yarn dev
# or
pnpm dev
# or
bun dev

Open http://localhost:3000 with your browser to see the result.

You can start editing the page by modifying app/page.tsx. The page auto-updates as you edit the file.

This project uses next/font to automatically optimize and load Geist, a new font family for Vercel.

Learn More

To learn more about Next.js, take a look at the following resources:

You can check out the Next.js GitHub repository - your feedback and contributions are welcome!

Deploy on Vercel

The easiest way to deploy your Next.js app is to use the Vercel Platform from the creators of Next.js.

Check out our Next.js deployment documentation for more details.

About

posOpen — Open, Modular Point-of-Sale Platform

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published