RecipeShare is a recipe-sharing web application built with ASP.NET Core and Entity Framework. This app allows users to explore, rate, and comment on a variety of recipes, with features that showcase technicalities in web application development, such as caching, role-based access control, and user activity tracking.
- View a list of recipes with filter and search options based on the recipe name and country of origin.
- Each recipe page displays ingredients, ratings, and user comments.
- Admin and moderator roles can manage recipes by creating, editing, and deleting entries.
- Logged-in users can add comments on recipe pages.
- Users can rate recipes, with checks to ensure that a recipe is only rated once per user.
- Popular recipes are cached for faster access using in-memory caching. Cache settings ensure that data remains current.
- Admins can view logs of user activities to monitor usage patterns within the application.
- A custom toolbar allows users to adjust text size, contrast, and other display settings for an enhanced user experience.
- Specific actions are restricted to roles (Admin and Moderator) to ensure secure access control.
- Built-in authentication restricts certain features, like commenting and rating, to logged-in users.
- ASP.NET Core – Web framework for building the application.
- Entity Framework Core – ORM for database interaction.
- Microsoft SQL Server – Database management system.
- Identity Framework – User authentication and role-based access control.
- IMemoryCache – Caching service for frequently accessed data.