This project is a CRUD (Create, Read, Update, Delete) REST API built using .NET 6. It follows the principles of Clean Architecture and Domain-Driven Design (DDD) to ensure a modular and maintainable codebase.
The purpose of this API is to manage breakfast items, allowing users to perform various operations such as creating new breakfasts, retrieving existing breakfasts, updating breakfast details, and deleting breakfasts from the system.
- Create Breakfast: Allows users to add new breakfast items to the system.
- Read Breakfast: Enables users to retrieve information about specific breakfast items or retrieve a list of all available breakfasts.
- Update Breakfast: Allows users to modify the details of existing breakfast items.
- Delete Breakfast: Enables users to remove breakfast items from the system.
The following technologies and tools were used in the development of this API:
- .NET 6: The latest version of Microsoft's .NET framework.
- C#: The programming language used to write the API logic.
- ASP.NET Core: The web application framework used to build the REST API.
- Entity Framework Core: An Object-Relational Mapping (ORM) framework for database interactions.
- SQL Server: The relational database management system used to store breakfast data.
- Swagger: A tool for generating API documentation and providing an interactive API playground.
- xUnit: The unit testing framework used for testing the API.
- GitHub: Version control and project management platform.
To get a local copy of the project up and running, follow these steps:
- Clone the repository:
git clone git@github.com:collins-okafor/BuberDinner.git
- Navigate to the project directory:
cd BuberDinner
- Install the necessary dependencies:
dotnet restore
- Set up the database connection string in the
appsettings.json
file. - Apply database migrations:
dotnet ef database update
- Run the API:
dotnet run
The API should now be running locally on http://localhost:5000
.
Contributions are welcome! If you find any issues or have suggestions for improvement, please open an issue or submit a pull request.
This project is licensed under the MIT License. Feel free to use and modify the code as per the terms of the license.