mirror of
https://github.com/Memo-2023/mana-monorepo.git
synced 2026-05-14 18:01:09 +02:00
refactor: rename nutriphi module to food (Essen)
Complete rename across the entire monorepo pre-launch: - Module, routes, API, i18n, standalone landing app directories - All code identifiers, display names, logo component - German user-facing label: "Essen" (English brand stays "Food") - Dexie table nutriFavorites -> foodFavorites - Infra configs (docker-compose, cloudflared, nginx, wrangler) Zero residue of nutriphi remains. No data migration needed (pre-launch). Follow-up: run pnpm install, update Cloudflare DNS (food.mana.how), rename Cloudflare Pages project. Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
This commit is contained in:
parent
f5cb833b04
commit
53b3746b98
196 changed files with 863 additions and 719 deletions
|
|
@ -87,7 +87,7 @@ Only servers that need their own database use Drizzle. Most apps rely on mana-sy
|
|||
|
||||
**Servers with Drizzle:** chat, todo, moodlit, context, plants, presi, traces, uload, wisekeep, news
|
||||
|
||||
**Servers without Drizzle (mana-sync only):** calendar, contacts, cards, mukke, nutriphi, picture, questions, storage
|
||||
**Servers without Drizzle (mana-sync only):** calendar, contacts, cards, mukke, food, picture, questions, storage
|
||||
|
||||
## Running Servers
|
||||
|
||||
|
|
|
|||
|
|
@ -1,11 +1,11 @@
|
|||
# NutriPhi MVP-Plan
|
||||
# Food MVP-Plan
|
||||
|
||||
> **Status:** Planung abgeschlossen
|
||||
> **Letzte Aktualisierung:** 2026-01-24
|
||||
|
||||
## Vision
|
||||
|
||||
NutriPhi ist eine datenschutzorientierte, KI-gestützte Ernährungs-Tracking-Web-App für gesundheitsbewusste Menschen. Sie ermöglicht das Erfassen von Mahlzeiten per Foto oder Text und liefert vollständige Nährwertanalysen mit personalisierten Empfehlungen.
|
||||
Food ist eine datenschutzorientierte, KI-gestützte Ernährungs-Tracking-Web-App für gesundheitsbewusste Menschen. Sie ermöglicht das Erfassen von Mahlzeiten per Foto oder Text und liefert vollständige Nährwertanalysen mit personalisierten Empfehlungen.
|
||||
|
||||
---
|
||||
|
||||
|
|
@ -113,7 +113,7 @@ NutriPhi ist eine datenschutzorientierte, KI-gestützte Ernährungs-Tracking-Web
|
|||
### Projektstruktur
|
||||
|
||||
```
|
||||
apps/nutriphi/
|
||||
apps/food/
|
||||
├── apps/
|
||||
│ ├── web/ # SvelteKit (mobile-optimiert)
|
||||
│ └── backend/ # NestJS API
|
||||
|
|
@ -268,7 +268,7 @@ Output-Format: JSON mit strukturierten Nährwertdaten
|
|||
|
||||
```
|
||||
┌─────────────────────────────┐
|
||||
│ NutriPhi [+] [Profile] │
|
||||
│ Food [+] [Profile] │
|
||||
├─────────────────────────────┤
|
||||
│ │
|
||||
│ Heute: 1.450 / 2.000 kcal │
|
||||
|
|
@ -378,7 +378,7 @@ Output-Format: JSON mit strukturierten Nährwertdaten
|
|||
|
||||
### Wiederverwendbare Shared Components
|
||||
|
||||
| Komponente | Verwendung in NutriPhi |
|
||||
| Komponente | Verwendung in Food |
|
||||
|------------|------------------------|
|
||||
| `HeroSection` | "Fotografiere dein Essen, verstehe was du isst" |
|
||||
| `FeatureSection` | KI-Analyse, Nährwerte, Tracking, Empfehlungen |
|
||||
|
|
@ -392,14 +392,14 @@ Output-Format: JSON mit strukturierten Nährwertdaten
|
|||
### Projektstruktur
|
||||
|
||||
```
|
||||
apps/nutriphi/apps/landing/
|
||||
apps/food/apps/landing/
|
||||
├── src/
|
||||
│ ├── pages/
|
||||
│ │ └── index.astro
|
||||
│ ├── layouts/
|
||||
│ │ └── Layout.astro
|
||||
│ ├── styles/
|
||||
│ │ └── global.css # NutriPhi Theme (Grün)
|
||||
│ │ └── global.css # Food Theme (Grün)
|
||||
│ └── components/ # Custom falls nötig
|
||||
├── astro.config.mjs
|
||||
├── package.json
|
||||
|
|
@ -409,7 +409,7 @@ apps/nutriphi/apps/landing/
|
|||
### Farbschema (CSS Custom Properties)
|
||||
|
||||
```css
|
||||
/* NutriPhi Theme - Gesundheit/Natur */
|
||||
/* Food Theme - Gesundheit/Natur */
|
||||
--color-primary: #22C55E; /* Green 500 */
|
||||
--color-primary-hover: #16A34A; /* Green 600 */
|
||||
--color-secondary: #F97316; /* Orange 500 */
|
||||
|
|
@ -1,8 +1,8 @@
|
|||
# NutriPhi - App-Planung
|
||||
# Food - App-Planung
|
||||
|
||||
## Vision
|
||||
|
||||
NutriPhi ist eine KI-gestützte Ernährungs-Tracking-App, die es Nutzern ermöglicht, ihre Mahlzeiten per Foto, Text oder Sprache zu erfassen und automatisch Nährwertinformationen zu erhalten.
|
||||
Food ist eine KI-gestützte Ernährungs-Tracking-App, die es Nutzern ermöglicht, ihre Mahlzeiten per Foto, Text oder Sprache zu erfassen und automatisch Nährwertinformationen zu erhalten.
|
||||
|
||||
## Planungsdokumente
|
||||
|
||||
|
|
@ -22,7 +22,7 @@
|
|||
| 7 | **Presi** | decks, slides | Ja (Store + Pages umgeschrieben) |
|
||||
| 8 | **Picture** | images, boards, boardItems, tags, imageTags | Ja (Gallery + Boards umgeschrieben) |
|
||||
| 9 | **Inventar** | collections, items, locations, categories | Nein (local-store angelegt, Stores nutzen noch localStorage) |
|
||||
| 10 | **NutriPhi** | meals, goals, favorites | Nein (local-store angelegt, Stores nutzen noch API) |
|
||||
| 10 | **Food** | meals, goals, favorites | Nein (local-store angelegt, Stores nutzen noch API) |
|
||||
| 11 | **Planta** | plants, plantPhotos, wateringSchedules, wateringLogs | Nein (local-store angelegt, Stores nutzen noch API) |
|
||||
| 12 | **Storage** | files, folders, tags, fileTags | Nein (local-store angelegt, Stores nutzen noch API) |
|
||||
| 13 | **Chat** | conversations, messages, templates | Nein (local-store angelegt, Stores nutzen noch API) |
|
||||
|
|
@ -108,7 +108,7 @@ Fertige Endpoints: Better Auth nativ, Auth (Register/Login/Logout/Validate), Gui
|
|||
|
||||
```
|
||||
# Local-First (Phase 3)
|
||||
ce51fd5f feat(apps): migrate Presi, Picture, Inventar, NutriPhi, Planta, Storage
|
||||
ce51fd5f feat(apps): migrate Presi, Picture, Inventar, Food, Planta, Storage
|
||||
8d880f1f feat(apps): migrate Chat, Questions, Mukke, Context, Photos
|
||||
a31ccc6c feat(apps): add local-store to SkilltTree and CityCorners
|
||||
7754cf6e refactor(skilltree): replace custom idb → @manacore/local-store
|
||||
|
|
|
|||
|
|
@ -333,7 +333,7 @@ Alle Web-Apps mit CRUD-Datenmodell wurden auf Local-First migriert:
|
|||
| **Picture** | images, boards, boardItems, tags, imageTags | Replicate API, Upload, Explore |
|
||||
| **Presi** | decks, slides | Share-Links |
|
||||
| **Inventar** | collections, items, locations, categories | Nur Sync |
|
||||
| **NutriPhi** | meals, goals, favorites | AI-Analyse (Gemini), Recommendations |
|
||||
| **Food** | meals, goals, favorites | AI-Analyse (Gemini), Recommendations |
|
||||
| **Planta** | plants, plantPhotos, wateringSchedules, wateringLogs | Foto-Upload, AI-Analyse (Gemini) |
|
||||
| **Storage** | files, folders, tags, fileTags | Datei-Upload/Download, Shares, Versionen |
|
||||
| **Chat** | conversations, messages, templates | LLM Streaming |
|
||||
|
|
|
|||
|
|
@ -46,7 +46,7 @@ manacore-monorepo/
|
|||
│ │ │ └── landing/
|
||||
│ │ └── packages/
|
||||
│ │
|
||||
│ ├── nutriphi/
|
||||
│ ├── food/
|
||||
│ │ ├── apps/
|
||||
│ │ │ ├── backend/
|
||||
│ │ │ ├── mobile/
|
||||
|
|
@ -134,7 +134,7 @@ mkdir -p services
|
|||
| `cards/` | `apps/cards/` |
|
||||
| `memoro/` | `apps/memoro/` |
|
||||
| `picture/` | `apps/picture/` |
|
||||
| `nutriphi/` | `apps/nutriphi/` |
|
||||
| `food/` | `apps/food/` |
|
||||
| `uload/` | `apps/uload/` |
|
||||
| `news/` | `apps/news/` |
|
||||
| `manacore/` | `apps/manacore/` |
|
||||
|
|
@ -146,7 +146,7 @@ git mv maerchenzauber apps/maerchenzauber
|
|||
git mv cards apps/cards
|
||||
git mv memoro apps/memoro
|
||||
git mv picture apps/picture
|
||||
git mv nutriphi apps/nutriphi
|
||||
git mv food apps/food
|
||||
git mv uload apps/uload
|
||||
git mv news apps/news
|
||||
git mv manacore apps/manacore
|
||||
|
|
@ -160,7 +160,7 @@ Projects with backends at root level need restructuring:
|
|||
| ------------------------ | ----------------------------- |
|
||||
| `apps/chat/backend/` | `apps/chat/apps/backend/` |
|
||||
| `apps/cards/backend/` | `apps/cards/apps/backend/` |
|
||||
| `apps/nutriphi/backend/` | `apps/nutriphi/apps/backend/` |
|
||||
| `apps/food/backend/` | `apps/food/apps/backend/` |
|
||||
|
||||
```bash
|
||||
# Chat: move backend into apps/
|
||||
|
|
@ -171,9 +171,9 @@ git mv apps/chat/backend apps/chat/apps/backend
|
|||
mkdir -p apps/cards/apps
|
||||
git mv apps/cards/backend apps/cards/apps/backend
|
||||
|
||||
# Nutriphi: move backend into apps/
|
||||
mkdir -p apps/nutriphi/apps
|
||||
git mv apps/nutriphi/backend apps/nutriphi/apps/backend
|
||||
# Food: move backend into apps/
|
||||
mkdir -p apps/food/apps
|
||||
git mv apps/food/backend apps/food/apps/backend
|
||||
```
|
||||
|
||||
### 2.3 Move mana-core-auth to services/
|
||||
|
|
@ -231,7 +231,7 @@ No changes needed - turbo.json uses task definitions, not paths.
|
|||
"picture:dev": "turbo run dev --filter=@picture/*...",
|
||||
"uload:dev": "turbo run dev --filter=@uload/*...",
|
||||
"chat:dev": "turbo run dev --filter=@chat/*...",
|
||||
"nutriphi:dev": "turbo run dev --filter=@nutriphi/*...",
|
||||
"food:dev": "turbo run dev --filter=@food/*...",
|
||||
"news:dev": "turbo run dev --filter=@news/*...",
|
||||
|
||||
"dev:maerchenzauber:web": "pnpm --filter @maerchenzauber/web dev",
|
||||
|
|
@ -266,11 +266,11 @@ No changes needed - turbo.json uses task definitions, not paths.
|
|||
"dev:chat:backend": "pnpm --filter @chat/backend start:dev",
|
||||
"dev:chat:app": "turbo run dev --filter=@chat/web --filter=@chat/backend",
|
||||
|
||||
"dev:nutriphi:mobile": "pnpm --filter @nutriphi/mobile dev",
|
||||
"dev:nutriphi:web": "pnpm --filter @nutriphi/web dev",
|
||||
"dev:nutriphi:landing": "pnpm --filter @nutriphi/landing dev",
|
||||
"dev:nutriphi:backend": "pnpm --filter @nutriphi/backend start:dev",
|
||||
"dev:nutriphi:app": "turbo run dev --filter=@nutriphi/web --filter=@nutriphi/backend",
|
||||
"dev:food:mobile": "pnpm --filter @food/mobile dev",
|
||||
"dev:food:web": "pnpm --filter @food/web dev",
|
||||
"dev:food:landing": "pnpm --filter @food/landing dev",
|
||||
"dev:food:backend": "pnpm --filter @food/backend start:dev",
|
||||
"dev:food:app": "turbo run dev --filter=@food/web --filter=@food/backend",
|
||||
|
||||
"dev:news:mobile": "pnpm --filter @news/mobile dev",
|
||||
"dev:news:web": "pnpm --filter @news/web dev",
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@
|
|||
| 12 | **uload** | queries (umfangreich), types | 3 routes (dashboard, links, analytics) | **Done** |
|
||||
| 13 | **context** | queries, types | 5 routes (dashboard, spaces, documents) | **Done** |
|
||||
| 14 | **questions** | queries, types | 4 routes (list, collections, new, detail) | **Done** |
|
||||
| 15 | **nutriphi** | queries, types, constants | 4 routes (dashboard, add, history, goals) | **Done** |
|
||||
| 15 | **food** | queries, types, constants | 4 routes (dashboard, add, history, goals) | **Done** |
|
||||
| 16 | **storage** | stores (2), queries, types | 7 routes (files, folders, favorites, search, trash) | **Done** |
|
||||
| 17 | **cards** | stores (2), components (2), queries | 6 routes (decks, study, explore, progress) | **Done** |
|
||||
| 18 | **contacts** | stores (3), queries, types | 3 routes (list, detail/edit) | **Done** |
|
||||
|
|
@ -109,7 +109,7 @@ Alle Apps die zum ManaCore-Ökosystem gehören und von Shared IndexedDB, Dashboa
|
|||
| **times** | Zeiterfassung, Dashboard-Widget |
|
||||
| **context** | Dokument-Workspace |
|
||||
| **questions** | Research-Assistant |
|
||||
| **nutriphi** | Ernährung |
|
||||
| **food** | Ernährung |
|
||||
| **planta** | Pflanzenpflege |
|
||||
| **uload** | URL-Shortener, Links |
|
||||
| **calc** | Rechner |
|
||||
|
|
@ -259,7 +259,7 @@ src/lib/modules/
|
|||
├── times/
|
||||
├── context/
|
||||
├── questions/
|
||||
├── nutriphi/
|
||||
├── food/
|
||||
├── planta/
|
||||
├── uload/
|
||||
├── calc/
|
||||
|
|
@ -367,7 +367,7 @@ src/routes/
|
|||
│ ├── times/+page.svelte
|
||||
│ ├── context/+page.svelte
|
||||
│ ├── questions/+page.svelte
|
||||
│ ├── nutriphi/+page.svelte
|
||||
│ ├── food/+page.svelte
|
||||
│ ├── planta/+page.svelte
|
||||
│ ├── uload/+page.svelte
|
||||
│ ├── calc/+page.svelte
|
||||
|
|
@ -475,7 +475,7 @@ import { CITYCORNERS_COLLECTIONS } from '$lib/modules/citycorners/collections';
|
|||
import { TIMES_COLLECTIONS } from '$lib/modules/times/collections';
|
||||
import { CONTEXT_COLLECTIONS } from '$lib/modules/context/collections';
|
||||
import { QUESTIONS_COLLECTIONS } from '$lib/modules/questions/collections';
|
||||
import { NUTRIPHI_COLLECTIONS } from '$lib/modules/nutriphi/collections';
|
||||
import { FOOD_COLLECTIONS } from '$lib/modules/food/collections';
|
||||
import { PLANTA_COLLECTIONS } from '$lib/modules/planta/collections';
|
||||
import { ULOAD_COLLECTIONS } from '$lib/modules/uload/collections';
|
||||
import { CALC_COLLECTIONS } from '$lib/modules/calc/collections';
|
||||
|
|
@ -521,7 +521,7 @@ db.version(1).stores({
|
|||
...TIMES_COLLECTIONS,
|
||||
...CONTEXT_COLLECTIONS,
|
||||
...QUESTIONS_COLLECTIONS,
|
||||
...NUTRIPHI_COLLECTIONS,
|
||||
...FOOD_COLLECTIONS,
|
||||
...PLANTA_COLLECTIONS,
|
||||
...ULOAD_COLLECTIONS,
|
||||
...CALC_COLLECTIONS,
|
||||
|
|
@ -578,7 +578,7 @@ export const SYNC_APP_MAP: Record<string, string[]> = {
|
|||
times: ['clients', 'tProjects', 'timeEntries', 'tTags', 'tTemplates', 'tSettings'],
|
||||
context: ['spaces', 'documents'],
|
||||
questions: ['qCollections', 'questions', 'answers'],
|
||||
nutriphi: ['meals', 'goals', 'nFavorites'],
|
||||
food: ['meals', 'goals', 'nFavorites'],
|
||||
planta: ['plants', 'plantPhotos', 'wateringSchedules', 'wateringLogs'],
|
||||
uload: ['links', 'uTags', 'uFolders', 'linkTags'],
|
||||
calc: ['calculations', 'savedFormulas'],
|
||||
|
|
@ -769,7 +769,7 @@ Nach Komplexität sortiert — einfachste zuerst, um den Prozess einzuüben:
|
|||
| 12 | **uload** | 12 | 10 | Mittel | Hat Backend-Server |
|
||||
| 13 | **context** | 10 | 15 | Mittel | Mittlere Komplexität |
|
||||
| 14 | **questions** | 10 | 14 | Mittel | Hat Backend-API |
|
||||
| 15 | **nutriphi** | 12 | 10 | Mittel | Hat Backend-Server |
|
||||
| 15 | **food** | 12 | 10 | Mittel | Hat Backend-Server |
|
||||
| 16 | **storage** | 12 | 15 | Mittel | Hat Backend + MinIO |
|
||||
| 17 | **cards** | 12 | 18 | Mittel | Hat Backend-Server |
|
||||
| 18 | **contacts** | 23 | 39 | Komplex | Backend + Import/Export |
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue