SekiDesu0 83f9f606de modified: templates/checkout.html
modified:   templates/macros/modals.html
2026-04-16 02:04:14 -04:00
2026-02-26 00:34:36 -03:00
2026-04-04 01:10:19 -03:00
2026-03-18 01:53:52 -03:00
2026-03-17 17:25:14 -03:00
2026-03-07 03:35:22 -03:00
2026-02-25 23:28:09 -03:00
2026-04-16 00:23:08 -04:00
2026-03-07 03:07:45 -03:00

SekiPOS v2.2 🍫🥤

A reactive POS inventory system for software engineers with a snack addiction. Features real-time UI updates, automatic product discovery via Open Food Facts, and local image caching.

🚀 Features

  • Real-time UI: Instant updates via Socket.IO.
  • Smart Fetch: Pulls product names/images from Open Food Facts if not found locally.
  • Local Cache: Saves images locally to static/cache to avoid IP bans.
  • CLP Ready: Chilean Peso formatting ($1.234) for local commerce.
  • Secure: Hashed password authentication via Flask-Login.
  • On device scanner: Add and scan products from within your phone!

🐳 Docker Deployment (Server)

Build and run the central inventory server:

# Build the image
docker build -t sekipos:latest .

# Run the container (Map port 5000 and persist the database/cache)
docker run -d \
  -p 5000:5000 \
  -v $(pwd)/sekipos/db:/app/db \
  -v $(pwd)/sekipos/static/cache:/app/static/cache \
  --name sekipos-server \
  --restart unless-stopped \
  sekipos:latest

Or use this stack:

name: sekipos
services:
    sekipos:
        ports:
            - 5000:5000
        environment:
            - TZ=America/Santiago
        volumes:
            - YOUR_PATH/sekipos/db:/app/db
            - YOUR_PATH/sekipos/static/cache:/app/static/cache
        container_name: sekipos-server
        image: sekipos:latest
        restart: unless-stopped

🔌 Hardware Scanner Bridge (ScannerGO)

The server needs a bridge to talk to your physical COM port. Use the ScannerGO binary on the machine where the scanner is plugged in.

🐧 Linux

chmod +x ScannerGO-linux
./ScannerGO-linux -port "/dev/ttyACM0" -baud 115200 -url "http://<SERVER_IP>:5000/scan"

🪟 Windows

.\ScannerGO-windows.exe -port "COM3" -baud 115200 -url "http://<SERVER_IP>:5000/scan"

Note: Ensure the -url points to your Docker container's IP address.

All this program does its send the COM data from the scanner gun to:

https://scanner.sekidesu.xyz/scan?content=BAR-CODE

📦 Local Installation (Development)

If you're too afraid of Docker:

pip install -r requirements.txt
python app.py

🔐 Credentials

  • Username: admin
  • Password: seki123 (Change this in app.py or you'll be hacked by a smart-fridge)

📁 Structure

  • app.py: The inventory/web server.
  • static/cache/: Local repository for product images.
  • db/pos_database.db: SQLite storage.

📋 TODOs?

  • Some form of user registration(?)
  • Major refactoring of the codebase

🥼 Food Datasets

Description
No description provided
Readme AGPL-3.0 315 MiB
2026-03-17 17:24:14 -03:00
Languages
HTML 61.6%
Python 19.8%
Go 6.4%
C++ 6%
CSS 2.6%
Other 3.6%