Welcome to my RESTful API project built using ASP.NET Core — a clean, maintainable, and scalable backend service developed as part of my upskilling journey. This API was implemented by following industry best practices and the guide by Evandro Gomes.
🚀 This project demonstrates my understanding of building real-world APIs using modern C# and .NET Core frameworks, and reflects my capabilities in backend development, database integration, and API testing.
This RESTful API simulates a real-world application scenario where client applications interact with centralized backend services to manage and access data. The solution follows Clean Architecture principles, ensuring that code is well-structured and easy to maintain.
- .NET Core 2.2
- ASP.NET Core Web API
- Entity Framework Core
- AutoMapper
- PostgreSQL (or your choice of RDBMS)
- Postman (for API testing)
- Visual Studio Code (or any preferred IDE)
- ✅ Clean and maintainable API structure
- ✅ Layered architecture (Controllers, Services, Repositories)
- ✅ DTOs (Data Transfer Objects) with AutoMapper
- ✅ Full CRUD operations
- ✅ Error handling and validations
- ✅ Postman Collection for API testing
- ✅ Git version control and best commit practices
/MyApiProject │ ├── Controllers # API Endpoints ├── Services # Business Logic ├── Repositories # Data Access Layer ├── Models # Domain Models ├── DTOs # Data Transfer Objects ├── MappingProfiles # AutoMapper Profiles ├── appsettings.json # Configuration file └── Program.cs / Startup.cs
yaml Copy Edit
- .NET Core SDK 2.2
- Postman
- Visual Studio Code
- C# Extension for VS Code
# Clone the repo
git clone https://github.com/your-username/your-repo-name.git
# Navigate to the folder
cd your-repo-name
# Restore dependencies
dotnet restore
# Run the project
dotnet run
📬 API Endpoints
Method Endpoint Description
GET /api/resource Get all items
GET /api/resource/{id} Get item by ID
POST /api/resource Create new item
PUT /api/resource/{id} Update item
DELETE /api/resource/{id} Delete item
🔄 Replace resource with your actual entity, such as users, products, etc.
📘 Learning Outcomes
🧠 Gained practical experience implementing RESTful APIs
🔄 Learned integration of AutoMapper for DTO mapping
💾 Used Entity Framework Core for database operations
🧪 Practiced API testing using Postman
🛠️ Understood layered architecture for scalable backend services
📈 Improved Git and version control collaboration practices
🧑💻 About Me
I'm Simbongile Dyi, a passionate Junior Software Developer with hands-on experience in ASP.NET Core, C#, PostgreSQL, and modern backend engineering practices.
🌍 Based in South Africa 🇿🇦
📫 Email Me : Simbongile.Dyi99@gmail.com
🔗 LinkedIn : https://www.linkedin.com/in/simbongile-dyi-288227249/
💼 Currently learning and building real-world projects to level up!
🌟 Acknowledgements
Special thanks to Evandro Gomes for the incredible step-by-step guide that inspired and shaped this project. Check out the original article.
📄 License
This project is open source and available under the MIT License.
⭐ If you find this project useful or inspiring, feel free to star the repo and connect with me!
yaml
Copy
Edit
---
<img width="1423" height="832" alt="image" src="https://github.com/user-attachments/assets/76b28371-3337-4b43-970a-69f26f131676" />