No description
  • Python 66.4%
  • Svelte 27%
  • JavaScript 6.2%
  • HTML 0.4%
Find a file
Max Brueckner 0756bed3a6 plan
2026-02-14 14:26:16 +01:00
.woodpecker olli init 2026-02-14 13:03:54 +01:00
backend olli init 2026-02-14 13:03:54 +01:00
docker olli init 2026-02-14 13:03:54 +01:00
frontend olli init 2026-02-14 13:03:54 +01:00
scanner plan 2026-02-14 14:26:16 +01:00
.env.example olli init 2026-02-14 13:03:54 +01:00
.gitignore olli init 2026-02-14 13:03:54 +01:00
AndereAnbieter.md olli init 2026-02-14 13:03:54 +01:00
docker-compose.truenas.yml olli init 2026-02-14 13:03:54 +01:00
IdeasorToDo.md plan 2026-02-14 14:26:16 +01:00
README.md olli init 2026-02-14 13:03:54 +01:00

POS System - CashCardRegister

Ein modulares Point-of-Sale System mit pluggable Payment Providern.

Features

  • Product Management: Produkte mit Barcode, Name, Preis verwalten
  • Checkout Flow: Barcode-Scanner → Warenkorb → Zahlung
  • Payment Providers: Pluggable Architecture (Cash, SumUp, erweiterbar)
  • Real-time Updates: WebSocket für Live-Warenkorb
  • Admin UI: Produktverwaltung

Docs

Quick Start (Docker)

cp .env.example .env
# Edit .env with your credentials
docker compose -f docker/docker-compose.yml up --build

Development

Backend

cd backend
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
uvicorn app.main:app --reload

Frontend

cd frontend
npm install
npm run dev

Tests

cd backend
pytest tests/ -v

Tests in Docker (like CI)

docker compose -f docker/docker-compose.test.yml up --build --abort-on-container-exit

Architecture

Payment Provider Pattern

Adding a new payment provider requires only:

  1. Create backend/app/payments/providers/newprovider.py
  2. Register in backend/app/payments/factory.py

No other code changes needed.

Demo Data

Demo products are seeded on first startup. To reset:

# Delete the database and restart
rm backend/pos.db