Skip to content

Commit

Permalink
Update README.md
Browse files Browse the repository at this point in the history
  • Loading branch information
DustSwiffer authored Jul 19, 2024
1 parent 8f9030c commit 677bd13
Showing 1 changed file with 40 additions and 22 deletions.
62 changes: 40 additions & 22 deletions README.md
Original file line number Diff line number Diff line change
@@ -1,30 +1,48 @@
# API Boilerplate

This repository provides a boilerplate for creating a fully functional API using .NET technologies. It includes the setup for StyleCop, Entity Framework Core (EF Core), Swagger UI, AutoFixture, and Moq. The solution is structured with separate projects for Business Logic, Data Access, and API Endpoints to promote clean architecture and maintainability.
# 🎉 Welcome to the .NET API Boilerplate! 🚀
Hey there, fellow coder! 👋

## Table of Contents
You've just discovered the .NET API Boilerplate, a fantastic starting point for diving into .NET API development. This is not your typical boilerplate it’s designed to be a learning playground packed with features and, yes, a few quirks along the way!

- [Features](#features)
- [Project Structure](#project-structure)
- [Getting Started](#getting-started)
- [Configuration](#configuration)
- [Usage](#usage)
- [Testing](#testing)
- [Contributing](#contributing)
- [License](#license)
## 🚀 What's Inside?
Here’s what’s in store with this boilerplate:

## Features
### 🌟 Key Features
- **GitHub Actions:** Automate your builds and deployments with ease. Let the CI/CD magic do its thing while you focus on coding. 🛠️✨

- **StyleCop**: Enforces consistent code style and quality.
- **EF Core**: Simplifies database operations.
- **Swagger UI**: Provides interactive API documentation.
- **AutoFixture**: Automates the generation of test data.
- **Moq**: Facilitates the creation of mock objects for unit testing.
- **Unit Tests with AutoFixture and Moq:** Write and run unit tests with these powerful tools to ensure your code does what it's supposed to do. Debugging bugs just got a bit easier! 🐞🔍

## Project Structure
- **Swagger UI:** Showcase and interact with your API endpoints effortlessly. Swagger UI makes your API documentation look sharp and professional. 📜👍

The solution is divided into three main projects:
- **Entity Framework Core:** Handle your database operations with this ORM framework, simplifying data management and access. 🗃️🔄

1. **API**: Contains the endpoints and configurations for the API.
2. **Business**: Contains the business logic and services.
3. **Data**: Contains the data models, context, and repository implementations.
- **Microsoft Identity:** Secure your API with built-in authentication and authorization mechanisms. Because your data deserves top-notch security. 🔒🚪

- **Well-Structured Architecture:**
- **AdvancedAPI:** Controllers to manage API requests.
- **AdvancedAPI.Business:** Services for your business logic.
- **AdvancedAPI.Data:** Models and repositories for data handling.
- **AdvancedAPI.Tests:** Unit tests to ensure everything works smoothly.

##🚧 Learning by Doing
This boilerplate is designed to be a hands-on learning experience for me. It’s intentionally set up with potential mistakes and quirks to help you learn by doing:

- **Spot a Mistake?** Perfect! It’s a great opportunity to dig in and understand what went wrong. Your observations can be valuable for learning.

- **Explore and Experiment:** Feel free to modify, break, and fix things. The goal is to learn and grow through exploration.

📦 Getting Started
1. **Clone the Repo:** Get your own copy of the project.

2. **Configure the AppSettings:** Open appsettings.json and set it up according to your environment. This is where you customize your setup.

3. **Build and Run:** Compile and run the project to see it in action.

4. **Check It Out:** Visit http://localhost:7242/swagger to view and interact with your API via Swagger UI.

📣 Feedback Welcome!
Your feedback is important. If you encounter issues or have suggestions, let me know! This is all part of the learning process, and your insights can help improve the experience for everyone.

Happy coding and enjoy the journey with your new .NET API Boilerplate! 🚀💻✨

*P.S. This boilerplate is a work in progress and meant for learning. Embrace the quirks and enjoy exploring!*

0 comments on commit 677bd13

Please sign in to comment.