# đŸœïž Rezeptverwaltungs-Applikation ## Überblick Dieses Projekt ist eine webbasierte Applikation zur Verwaltung und Erfassung von Kochrezepten aus verschiedenen KĂŒchen weltweit. Benutzer können Rezepte erstellen, kategorisieren und verwalten. Die Anwendung basiert auf einer strukturierten Datenbank mit Rezepten, Zutaten, Einheiten, Kategorien und Zubereitungsschritten. Ziel des Projekts war es, eine saubere, wartbare Full-Stack-Applikation unter Verwendung moderner ASP.NET Core Technologien zu entwickeln. --- ## Motivation Ich habe dieses Projekt umgesetzt, um meine Kenntnisse in der strukturierten Webentwicklung mit **ASP.NET Core MVC** und **Entity Framework Core** zu vertiefen. Besonders wichtig war mir dabei: - die saubere Umsetzung des MVC-Architekturprinzips - eine klare Trennung von Verantwortlichkeiten - ein durchdachtes Datenbankdesign - die Integration von AJAX, um eine dynamische Benutzererfahrung ohne vollstĂ€ndige Seitenneuladung zu ermöglichen Dieses Projekt hat mir geholfen, Theorie aus der Ausbildung praxisnah umzusetzen und meine FĂ€higkeiten im Backend-Design weiterzuentwickeln. --- ## Technologien / Tech Stack ### Backend - C# - ASP.NET Core MVC (.NET 8) - Entity Framework Core - Dependency Injection ### Frontend - HTML - CSS - JavaScript - AJAX ### Datenbank / ORM - Entity Framework Core - `DbContext` & `DbSet` - Relationales Datenmodell --- ## Architektur / Technischer Ansatz Die Anwendung basiert auf dem **Model-View-Controller (MVC)**-Architekturprinzip. ### Struktur #### Models ReprĂ€sentieren Rezepte, Zutaten, Einheiten, Kategorien sowie deren Beziehungen. #### Controller Verarbeiten HTTP-Anfragen und koordinieren die Interaktion zwischen Datenmodell und BenutzeroberflĂ€che. #### Views Dynamische Razor-Views zur Darstellung der Daten. #### Datenzugriff Umsetzung mittels Entity Framework Core ĂŒber `DbContext`. --- ### Technische Konzepte - MVC-Pattern in ASP.NET Core - Entity Framework Core als ORM - Attributbasierte Konfiguration (`[ResponseCache]`) - .NET 8 Projektstruktur - Asynchrone Benutzerinteraktionen mittels AJAX --- ## Meine Rolle In diesem Projekt ĂŒbernahm ich die Rolle eines Full-Stack-Entwicklers und war verantwortlich fĂŒr: - Konzeption und Modellierung der Datenbankstruktur - Implementierung der Controller und GeschĂ€ftslogik - Erstellung dynamischer Razor-Views - Integration von AJAX zur Optimierung der Benutzerinteraktion - Strukturierung des Projekts gemĂ€ss MVC-Prinzipien --- ## Wichtige Funktionen - Erstellen und Bearbeiten von Rezepten - Verwaltung von Zutaten und Einheiten - Kategorisierung von Rezepten - Dynamische Aktualisierung von Inhalten mittels AJAX - Klare Trennung zwischen PrĂ€sentations- und Logikschicht --- ## Was ich gelernt habe Durch dieses Projekt konnte ich mein VerstĂ€ndnis fĂŒr folgende Themen vertiefen: - Praktische Anwendung der MVC-Architektur - Relationale Datenmodellierung mit Entity Framework Core - Umgang mit EntitĂ€tsbeziehungen - Asynchrone Kommunikation zwischen Frontend und Backend - Strukturierte und wartbare Backend-Entwicklung Das Projekt hat mir gezeigt, wie wichtig saubere Architektur und klare Code-Strukturen fĂŒr langfristig wartbare Anwendungen sind. --- ## Projektstatus **Status:** In Weiterentwicklung (Work in Progress) Die KernfunktionalitĂ€ten der Anwendung sind vollstĂ€ndig implementiert. Das Backend ist stabil und ermöglicht die vollstĂ€ndige Verwaltung (CRUD) von Rezepten, Zutaten, Einheiten und Kategorien. Die Applikation ist funktionsfĂ€hig und das Datenmodell ist strukturiert umgesetzt. Aktuell liegt der Fokus auf der weiteren Verbesserung der BenutzeroberflĂ€che und der Optimierung der User Experience. --- ## Geplante Verbesserungen (Roadmap) - [ ] Überarbeitung des UI-Designs (modernes, konsistentes Styling) - [ ] Verbesserung der ResponsivitĂ€t fĂŒr mobile EndgerĂ€te - [ ] Optimierung der Formular-Validierung im Frontend - [ ] Benutzerfreundlichere Fehlermeldungen - [ ] Erweiterte Such- und Filterfunktionen - [ ] EinfĂŒhrung von Benutzer-Authentifizierung (optional) --- ## Technische StabilitĂ€t - Backend-Logik vollstĂ€ndig implementiert - Relationale Datenbankstruktur korrekt modelliert - Entity Framework Core Migrationen funktionsfĂ€hig - AJAX-basierte Interaktionen integriert - Saubere Trennung zwischen PrĂ€sentations- und Logikschicht ---