docs: add comprehensive project README.md v1.3.3

This commit is contained in:
Daniel Bedeleanu
2026-04-11 12:47:23 +03:00
parent df9468344d
commit ed06f0b56e
3 changed files with 64 additions and 5 deletions

53
README.md Normal file
View File

@@ -0,0 +1,53 @@
# TFM aInventory (2026 Edition)
A unified, offline-first Inventory Management System built as a Progressive Web App (PWA). Features include AI-powered label extraction (OCR), local barcode/QR scanning, and multi-user authentication with LDAP support.
---
## 🛠 Project Modes
This project supports three distinct operational modes:
### 1. 🚀 Development Mode (Bare-Metal)
Ideal for local development on macOS/Linux.
* **Command:** `./start_server.sh`
* **Details:** Runs FastAPI (backend) and Next.js (frontend) in development mode. Uses `local-ssl-proxy` for HTTPS.
* **Backend:** http://localhost:8000
* **Frontend:** https://localhost:3003
### 2. 🐳 Docker Mode (Recommended for Production)
Isolated and portable container stack.
* **Command:** `docker-compose up -d --build`
* **Details:** Uses Caddy as a reverse proxy for HTTPS. Persistent data and logs are mapped to `./data` and `./logs`.
* **Access:** https://localhost:3003
### 3. 🐧 Standalone Linux Mode (Systemd)
Native Linux installation (Alma/Debian/Ubuntu) without Docker dependencies.
* **Installation:** `sudo ./install_service.sh`
* **Execution:** `sudo systemctl start inventory`
* **Details:** Compiles the frontend for production and manages the entire stack as a system service.
* **Access:** https://<SERVER-IP>:3003
---
## 📦 Production Distribution
To generate a clean production package without AI-agent metadata or development artifacts:
1. Run `./export_prod.sh`
2. A `.zip` archive will be created (e.g., `aInventory-PROD-v1.3.2.zip`).
3. This archive contains a specialized `README.txt` with deployment-only instructions.
---
## 🏗 Technical Overview
* **Backend:** FastAPI (Python 3.12+)
* **Frontend:** Next.js 15+ (React PWA)
* **Database:** SQLite (SQLAlchemy) with Dexie.js (IndexedDB) for client-side sync.
* **Proxy:** Caddy (Docker) or local-ssl-proxy (Standalone/Dev).
* **AI Engine:** Google Gemini (Generative AI SDK).
For more details, see [PROJECT_ARCHITECTURE.md](PROJECT_ARCHITECTURE.md).
---
## 📜 AI Operational Rules
AI agents working on this project MUST follow the guidelines in [AI_RULES.md](AI_RULES.md).

View File

@@ -1,12 +1,11 @@
{
"version": "1.3.2",
"last_build": "2026-04-11-1245",
"version": "1.3.3",
"last_build": "2026-04-11-1246",
"commit": "PENDING",
"changelog": [
"v1.3.3: Added comprehensive project README.md documenting all operational modes",
"v1.3.2: Systemd Standalone: Switched systemd service from Docker to bare-metal (Direct Python/Node management)",
"v1.3.1: Systemd support added (Docker-compose based - DEPRECATED)",
"v1.3.0: Dockerization: Dual-mode architecture, standalone Next.js, Python logger, and prod export script",
"v1.2.9: Automatic IDE Entry Points (GEMINI.md, CLAUDE.md proxies)",
"v1.2.8: Absolute Documentation Consolidation (Unified ARCHITECTURE and AI_RULES)"
"v1.3.0: Dockerization: Dual-mode architecture, standalone Next.js, Python logger, and prod export script"
]
}

View File

@@ -264,3 +264,10 @@
[2026-04-11 12:43:32] [INFO] [uvicorn.error] Application startup complete.
[2026-04-11 12:43:37] [WARNING] [uvicorn.error] Invalid HTTP request received.
[2026-04-11 12:43:37] [INFO] [uvicorn.access] ::ffff:127.0.0.1:0 - "POST /exa.language_server_pb.LanguageServerService/GetUnleashData HTTP/1.1" 404
[2026-04-11 12:43:54] [INFO] [uvicorn.access] ::ffff:192.168.84.140:0 - "GET /items/ HTTP/1.1" 200
[2026-04-11 12:44:24] [INFO] [uvicorn.access] ::ffff:192.168.84.140:0 - "GET /items/ HTTP/1.1" 200
[2026-04-11 12:44:54] [INFO] [uvicorn.access] ::ffff:192.168.84.140:0 - "GET /items/ HTTP/1.1" 200
[2026-04-11 12:45:24] [INFO] [uvicorn.access] ::ffff:192.168.84.140:0 - "GET /items/ HTTP/1.1" 200
[2026-04-11 12:45:54] [INFO] [uvicorn.access] ::ffff:192.168.84.140:0 - "GET /items/ HTTP/1.1" 200
[2026-04-11 12:46:24] [INFO] [uvicorn.access] ::ffff:192.168.84.140:0 - "GET /items/ HTTP/1.1" 200
[2026-04-11 12:46:54] [INFO] [uvicorn.access] ::ffff:192.168.84.140:0 - "GET /items/ HTTP/1.1" 200