Skip to content

Node.js/Express.js-based E-commerce API with RESTful endpoints. Enables seamless CRUD operations, pagination, filtering, and optional features like search, JWT authentication, and related resource handling.

Notifications You must be signed in to change notification settings

Ifamunas/mern-backend-project

Repository files navigation

Library/E-commerce Application API

This repository contains a Node.js/Express.js application with RESTful API endpoints for a library or e-commerce application. The API allows you to interact with items in the library or products in the store.

This is a teamwork assignment where you will work as a team within your group

How to work

  1. One team member should fork the repo.
  2. The other team members should clone the forked repo (your team member's forked repo).
  3. All team members now work from the origin repository.
  4. The member who forked the repo should open a PR

Please ask your instructor or supporting instructor if you have any questions or need help.

Level 1: Basic Requirements

In this level, the application includes the following features:

  1. Create all the needed models for the backend to function.
  2. Create routes to handle CRUD requests.
  3. Implement a route to handle GET requests for fetching a specific item or product based on a unique identifier (e.g., item ID or product ID).

Level 2: Additional Requirements

In addition to the basic requirements, the application enhances its functionality with the following features:

  1. Include pagination functionality to retrieve items or products in batches or limit the number of items returned in a single request.
  2. Implement a route to handle GET requests with query parameters for filtering items or products based on specific criteria (e.g., by category, price range).
  3. Add validation checks to ensure the data meets certain criteria before performing create or update operations (e.g., validating required fields, data format) using Zod.
  4. Create routes to handle GET requests to fetch items or products sorted in a specific order (e.g., by title, by date added).

Level 3: Bonus Requirements (Optional)

If you have a higher skill level and finish the previous requirements before the deadline, you can tackle the following bonus tasks:

  1. Implement search functionality to allow users to search for specific items or products based on keywords or specific fields (e.g., by title, by author).

  2. Integrate JWT authentication and authorization mechanisms to secure the API endpoints and restrict access to certain routes or operations.

  3. Add functionality to handle related resources (e.g., for a library, add routes to handle borrowing or returning books; for an e-commerce store, add routes for placing an order).

  4. Peer Review:

    • Review the code and implementation of 2 assignments from other participants.
    • Provide constructive feedback and suggestions for improvement.

Please note that the bonus requirements and reviews are optional and can be completed if you have additional time and advanced skills.

Happy coding!

About

Node.js/Express.js-based E-commerce API with RESTful endpoints. Enables seamless CRUD operations, pagination, filtering, and optional features like search, JWT authentication, and related resource handling.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published