PROJECT_CONTEXT.md
1. Vision Statement
LocalFoodAI is a local food AI that provides full nutritional value information on any food and can generate complete menu proposals based on the user's specification.
Key Features:
- User Accounts: Create an account and log in.
- Nutritional Info: Complete data (macros, minerals, vitamins, amino acids, etc.) for any food.
- Food Combinations: Nutritional overview for user-specified quantities/combinations.
- Nutrient Search: Search for specific nutrients and get a sortable list of foods.
- Saved Lists: Store and edit food combinations in named lists.
- Menu Proposals: AI-generated menus based on nutritional goals and constraints (e.g., allergies).
- Nutrition Chat: Competent AI interaction for any nutrition-related queries.
- Local Web Search: Anonymous tool for gathering missing info without leaving the server.
Constraints:
- Privacy: No user data leaves the server. All computation is local.
- Open Source: Public repo on
https://git.btshub.lu/LocalFoodAI_<IAM>. No confidential data in Git.
- Environment: Ubuntu 24.04 VM (8 vCPUs, 30 GB RAM, no dedicated GPU).
- Backend: Python/FastAPI with local database (SQLite/PostgreSQL).
- LLM: Quantized local models (via Ollama) optimized for CPU.
2. Roles
- Product Owner & Tech Lead: User (Roni) - Interviews customer, writes Taiga backlog, directs Antigravity.
- Development Team: Antigravity (AI) - Writes code, generates implementation plans, verifies logic.
- Customer & Scrum Master: Teacher (Gilles Everling) - Stakeholder and authority on "Done".
3. Workflow & Scrum Rules
- Sprint Duration: 1 week.
- Meetings:
- Daily Scrum (Wiki documentation: Accomplishments, Next steps, Obstacles).
- Thursday: Sprint Review, Sprint Retrospective, Sprint Planning.
- Backlog Management: User Stories in Taiga, broken into Technical Tasks.
- Review Policy: "Request Review" (Antigravity must not auto-proceed). User must approve Python/DB logic.
- Commit Format: Every commit message must start with
TG-<task_id>: <description>.
- Taiga-Gogs Integration: Webhooks track progress via commit messages.
4. Documentation Requirements (For Final Grade)
- Technical Document: Installation/config guide, tech stack explanation, LLM selection rationale, diagram of local communication, proof of 100% data privacy.
- User Manual: Non-developer guide on how to use all features.
- Antigravity Reflection: Explain model usage, agent permissions, and how struggles were handled.
5. VM Access
- Host: 192.168.130.171
- User: roni
- Password: BTSai123
- Root Password: BTSai123