diff --git a/src/data/projects/ecommerce-api.md b/src/data/projects/ecommerce-api.md new file mode 100644 index 000000000..d45f0c85b --- /dev/null +++ b/src/data/projects/ecommerce-api.md @@ -0,0 +1,49 @@ +--- +title: 'E-Commerce API' +description: 'E-Commerce platform with cart and payment gateway integration.' +isNew: false +sort: 12 +difficulty: 'intermediate' +nature: 'CLI' +skills: + - 'Programming Language' + - 'Database' + - 'Payment Gateway' + - 'Inventory Management' +seo: + title: 'E-Commerce API Project Idea' + description: '' + keywords: + - 'backend project idea' +roadmapIds: + - 'backend' +--- + +You are required to build an API for an e-commerce platform. If you have developed the other projects in this roadmap, you will have to keep in mind everything you have learned so far: + +- JWT authentication to ensure many users can interact with it. +- Implementing simple CRUD operations. +- Interaction with external services. Here you’ll be integrating with payment gateways such as Stripe. +- A complex data model that can handle products, shopping carts, and more. + +The goal of this project is to help you understand how to build a logic-heavy application with complex data models. You will also learn how to interact with external services and handle user authentication. + +![E-Commerce API](https://assets.roadmap.sh/guest/simple-ecommerce-api-thzqo.png) + +## Requirements + +Here is a rough list of requirements for this project: + +- Ability for users to sign up and log in. +- Ability to add products to a cart. +- Ability to remove products from a cart. +- Ability to view and search for products. +- Ability for users to checkout and pay for products. + +You should also have some sort of admin panel where only you can add products, set the prices, manage inventory, and more. + +Start with building the API first and then frontend; you can use tools like Postman to interact with your API. Alternatively, build a simple frontend with HTML, CSS and some templating engine like Jinja or EJS. + +
+ +This project is a great way to learn how to build a complex application with a lot of moving parts. I will highly recommend you to complete this project before moving on to more advanced projects. \ No newline at end of file diff --git a/src/pages/projects/[projectId].astro b/src/pages/projects/[projectId].astro index 35bbddd59..a1ff3d0a5 100644 --- a/src/pages/projects/[projectId].astro +++ b/src/pages/projects/[projectId].astro @@ -94,7 +94,7 @@ const githubUrl = `https://github.com/kamranahmedse/developer-roadmap/tree/maste
-
+
{ projectData.skills.map((skill) => (