An open API service indexing awesome lists of open source software.

https://github.com/tanveerisonline/web-api-store


https://github.com/tanveerisonline/web-api-store

Last synced: 2 months ago
JSON representation

Awesome Lists containing this project

README

        

Table of Contents

- [🎓 Web-Api-Store ](#-Web-Api-Store)
- [📸 Screenshots ](#-screenshots-)
- [🚀 Live Demo](#-live-demo)
- [📋 Kanban Board](#-kanban-board)
- [🧰 Tech Stack ](#-tech-stack--)
- [✨ Key Features ](#-key-features--)
- [📘 Getting Started ](#-getting-started--)
- [📂 Setup](#-setup)
- [📥 Installation](#-installation)
- [👨‍💻 Authors ](#-authors--)
- [🎯 Future Features ](#-future-features--)
- [🤝 Contribution ](#-contribution--)
- [💖 Show Your Support ](#-show-your-support--)
- [🙏 Acknowledgements](#-acknowledgements)
- [📜 License ](#-license-)

# 🎓 Online Retail Shop Web API

This project is a demonstration of a Web API for an online retail shop. It provides endpoints for managing products and orders. The application is built in C# .NET Core (or Node.js if preferred) and adheres to best practices for code structure, database management, and error handling.

## 🚀 Live Demo

Demo Link Comming soon [Online Retail Shop Web API])

(back to top)

## 🧰 Tech Stack

- ** Tech Stack ** :
- [Node.js](https:node.org/) - Node Run Time Environment.
- [Express.js](https:express.js) - Express.js a node.js Framework.
- [MONGOOSE](https://mongoosejs.com/) - MongoDB Framework.
- [MongoDb](https://www.mongodb.com/) - Database to save data.
- [Mocha || Chai] - Uses Mocha and Chai for testing purpose
- **Tools** 🛠:
- [Github](https://github.com/) - Github to upload and save work.
- [Github-Action] - For ci/cd pipeline.

(back to top)

## ✨ Key Features

- Add, edit, and delete products via Product Controller.
- Place and cancel orders through the Order Controller.
- Quantity of products is updated upon order placement.
- Exception handling for product unavailability.

(back to top)

### 📂 Project Structure

- **Tools** The application follows a three-layer architecture consisting of:

- Presentation Layer: This includes the Controllers responsible for handling incoming HTTP requests and returning appropriate responses.

- Business Logic Layer: Contains the logic for processing orders, managing products, and handling exceptions.

- Data Access Layer: Deals with database operations, including retrieving and persisting data.

### 📂 Project Setup

- Clone the repository.
- git clone https://github.com/tanveerisonline/web-api-store.git.
- cd my-project.
- npm install
- npm run dev
- npm run test

- ### Usage
- Start the application and make requests to the specified endpoints.

- ### Endpoints

- ### Product Controller
- POST /api/products: Add a new product.
- PUT /api/products/{id}: Update an existing product.
- DELETE /api/products/{id}: Delete a product.

- ### Order Controller
- POST /api/orders: Place a new order.
- DELETE /api/orders/{id}: Cancel an order.

(back to top)

## 👨‍💻 Authors

Feel free to reach out to us with your suggestions, ideas, or feedback. We are always eager to improve our services.

👤 **Tanveer Ahmad**

- GitHub: [@tanveerisonline](https://github.com/tanveerisonline)
- Twitter: [Tanveer Ahmad](https://twitter.com/Tanveer98589023)
- LinkedIn: [Tanveer Ahmad](https://www.linkedin.com/in/tanveerisonline/)

(back to top)

## 🤝 Contribution

Contributions, issues, and feature requests are welcome!

(back to top)

## 💖 Show Your Support

If you like this project, please consider giving it a ⭐.

(back to top)

```

```