# Datei 
Implementierungs-Schritte als Feature-Module - WIE es gebaut wird 

# Setup module 
## Backend
- Setup Symfony ./backend
## Frontend
- Setup Vue ./frontend, router, pinia
- App.vue - no content
## App
- Setup Kotlin ./app, navigation compose
- MainScreen.kt - no content
## Features 
- Symfony, Vue and Kotlin minimal setup, no content

# Base module 
## Backend
- nothing 
## Frontend
- router - / start page route 
- Startpage.vue - start page 
## App 
- NavHost - start destination
- StartScreen.kt - start page
## Features 
- Start page with navigation top, subnavigation below, main area
- Visible on frontend and app

# Task module
## Backend
- Task - Task entity
    - id, name, date, status
- TaskStatus - Enum for task status
    - active, done
- TaskController - Task routes
    - index, show, create, update, delete, toggle
- TaskManager - Task CRUD
    - create, update, delete, toggle
- TaskRepository - Default task queries
- TaskDto - Dto for create und update task 
## Frontend
- route/index.js - /tasks tasks routing
- Task.Vue - Display all tasks 
- TaskDetail.vue - Create and edit tasks
- api.js - API routes to symfony
## Features
- Task page
    - navigation - tasks
    - subnavigation - all tasks, new task, categories
- Start page 
    - main area - quader button to task page
- Task page
    - main area - list all tasks, each task has name, status in badge, edit button, onclick toggle task status
    - 
- Task detal page 
    - main area - 

# Category module
## Backend 
- Category - Category entity
    - id, name, color
- Task - Task entity
    - category
- 
- CategoryController - Category routes
    - index, show, create, update, delete
- TaskSchemaManager - TaskSchema CRUD
- TaskSchemaRepository - TaskSchema queries

# TaskSchema module
- TaskSchema - TaskSchema entity 
    - id, name, status, category, start, end, date
    - type(single, repeat, custom),
    - repeat(daily, weekly, monthly, yearly)
    - custom(days)
- TaskSchemaController - TaskSchema routes
    - index, show, create, update, delete
- TaskSchemaManager - TaskSchema CRUD
    - create, update, delete
- TaskSchemaRepository - TaskSchema queries
- TaskGenerator - Create tasks from schema
    - generate


# Item module
- Item - Item entity
- ItemController - Item routes
- ItemManager - Item CRUD
- ItemRepository - Item queries
- UnitEnum - Unit for Item

# Meal module
- Meal - Meal entity
- MealController - Meal routes
- MealManager - Meal CRUD
- MealRepository - Meal queries

# Shopping module
- ShoppingList - ShoppingList entity
- ShoppingListController - ShoppingList routes
- ShoppingListManager - ShoppingList CRUD
- ShoppingListRepository - ShoppingList queries