Logo Lanfrica

marwangpt237/algerian-pos-engine

Record type:

software
Creator:
mar
Host:
Product classification data engine for Algerian POS systems with trust-based feedback learning # πŸ›’ Algerian POS Engine A product classification data engine for Algerian POS (Point of Sale) systems with trust-based feedback learning. ## 🎯 Features - **Product Classification**: Automatically classify products into 28 categories (Eau, Lait, Fromage, etc.) - **Open Food Facts Integration**: Fetch and ingest product data from the Open Food Facts API - **Trust-Based Feedback**: Machine learning-like system that adjusts classifications based on customer corrections - **Deduplication**: Remove duplicate products using barcode matching and fuzzy matching - **Versioned Exports**: Export datasets as JSON, CSV, and SQLite snapshots - **Admin Dashboard**: Full-featured web interface for managing products, feedback, and customers ## πŸ“ Project Structure ``` β”œβ”€β”€ src/ β”‚ β”œβ”€β”€ app/ # Next.js App Router β”‚ β”‚ β”œβ”€β”€ api/ # API routes β”‚ β”‚ β”œβ”€β”€ page.tsx # Dashboard β”‚ β”‚ β”œβ”€β”€ products/ # Products management β”‚ β”‚ β”œβ”€β”€ feedback/ # Feedback management β”‚ β”‚ β”œβ”€β”€ customers/ # Customer management β”‚ β”‚ β”œβ”€β”€ classify/ # Manual classification β”‚ β”‚ └── export/ # Data export β”‚ β”œβ”€β”€ stages/ # Data engine stages β”‚ β”‚ β”œβ”€β”€ fetch.ts # Open Food Facts ingestion β”‚ β”‚ β”œβ”€β”€ normalize.ts # Text normalization β”‚ β”‚ β”œβ”€β”€ classify.ts # Product classification β”‚ β”‚ β”œβ”€β”€ deduplicate.ts # Deduplication β”‚ β”‚ β”œβ”€β”€ reweight.ts # Weight adjustment β”‚ β”‚ β”œβ”€β”€ feedback.ts # Feedback recording β”‚ β”‚ └── export.ts # Dataset export β”‚ β”œβ”€β”€ engine.ts # Main orchestrator β”‚ └── types.ts # Type definitions β”œβ”€β”€ exports/ # Exported datasets β”œβ”€β”€ products.db # SQLite database └── package.json ``` ## πŸš€ Getting Started ### Prerequisites - Node.js 20+ - npm or yarn ### Installation ```bash # Clone the repository git clone cd algerian-pos-engine # Install dependencies npm ins …