Skip to content

A RESTful API built with .NET 6 for managing products. Provides basic CRUD operations with SQL Server integration and Swagger/OpenAPI documentation.

License

Notifications You must be signed in to change notification settings

yasinramazangok/FirstProductProject

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Β 

History

26 Commits
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 
Β 

Repository files navigation

πŸš€ ProductApi

A RESTful API built with .NET 6 for managing products. Provides basic CRUD operations with SQL Server integration and Swagger/OpenAPI documentation.


🧰 Technologies & Tools

  • βš™οΈ Backend: ASP.NET Core 6, C#
  • πŸ—ƒοΈ Database: MS SQL Server
  • πŸ§ͺ Others: Docker, Portainer, Git, Swagger, WSL, ngrok (optional for live connection testing)

✨ Features

  • βœ… Create Product (POST /api/products) – Adds a new product.
  • βœ… List Products (GET /api/products) – Retrieves all products.
  • βœ… Get Product Details (GET /api/products/{id}) – Retrieves a specific product by ID.
  • βœ… Delete Product (DELETE /api/products/{id}) – Deletes a product.
  • ⚑ Layered Architecture: Controller β†’ Service β†’ Repository
  • ⚑ Asynchronous programming (async/await)
  • ⚑ Swagger API documentation
  • ⚑ Global exception handling

πŸ“· Demo / Screenshots

You can test the API endpoints via Swagger UI.

πŸ“‚ FirstProductProject/
β”œβ”€β”€ ProductApi/
  └── ProductApi
  └── ProductApi.BusinessLayer
  └── ProductApi.DataAccessLayer
  └── ProductApi.EntityLayer
  └── .dockerignore
  └── ProductApi.sln
β”œβ”€β”€ .gitignore/
β”œβ”€β”€ Dockerfile/
β”œβ”€β”€ LICENSE
└── README.md

πŸ“¦ Installation & Run

Follow the steps below to clone and run this project locally.

# 1. Clone the repo
git clone https://github.com/yasinramazangok/FirstProductProject

# 2. Navigate into the directory
cd FirstProductProject

# 3. (Optional) Set up database / environment
# dotnet ef database update

# 4. Run the project
dotnet run

🧠 What I Learned

  • Implementing layered architecture in ASP.NET Core (Controller β†’ Service β†’ Repository)
  • Performing CRUD operations with Entity Framework Core
  • Setting up Swagger for API documentation
  • Using async/await for asynchronous operations
  • Handling global exceptions

πŸ“Œ Future Improvements

  • πŸ”„ Add CI/CD pipeline
  • πŸ“± Mobile responsiveness
  • 🌍 Multi-language support (i18n)
  • πŸ§ͺ Add unit/integration testing

🀝 Contributing

Contributions, issues, and feature requests are welcome!

Feel free to Fork this repo and submit a Pull Request.


πŸ“¬ Contact

Yasin Ramazan GΓ–K

🌐 LinkedIn: @yasinramazangok

πŸ“§ Email: yasinrmzngok@gmail.com

πŸ™ GitHub: @yasinramazangok


πŸ“ License

This project is licensed under the MIT License – see the LICENSE file for details.

About

A RESTful API built with .NET 6 for managing products. Provides basic CRUD operations with SQL Server integration and Swagger/OpenAPI documentation.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published