GithubHelp home page GithubHelp logo

idonib / backend-assignment Goto Github PK

View Code? Open in Web Editor NEW

This project forked from coomar25/node.js_backend_developer__sales-management-platform-apis

0.0 0.0 0.0 232 KB

backend-task

JavaScript 100.00%

backend-assignment's Introduction

Assignment Title: Node.js Backend Developer - Sales Management Platform APIs

Assignment Description:

In this assignment, you will be tasked with developing a Node.js backend application that demonstrates your proficiency in backend development, specifically with Node.js and SQL databases. The assignment will assess your ability to architect and implement APIs, handle database operations.

Instructions:

  1. Fork this project repo to your profile and clone it to work on the project.

  2. Design and implement a sales management platform backend that provides APIs for managing department store sales.

  3. The application should have the following functionality:

    • User Management: APIs to register new users, authenticate existing users, and manage user profiles.
    • Product Management: APIs to create, update, delete, and retrieve product information.
    • Order Management: APIs to create, update, delete, and retrieve order information. Each order should include the user who placed the order, the products purchased, and the total amount.
    • Reporting: APIs to generate sales reports, such as total sales by day, week, or month, and top-selling products.
  4. Use Node.js as the backend runtime and any preferred framework (e.g., Express.js, Nest.js, Fastify) for building the APIs.

  5. Use a SQL database (e.g., MySQL, PostgreSQL) for data storage.

  6. Implement efficient database operations and query strategies to ensure optimal performance.

  7. Implement authentication and authorization mechanisms to secure the APIs.

  8. Use Swagger to document your APIs. Provide clear and detailed documentation for each endpoint, including request/response examples and any required authentication/authorization details.

Requirements:

  • Use Node.js and any preferred framework for building the backend APIs.
  • Use a SQL database for data storage.
  • ORMs like TypeORM or Prisma is preferred.
  • Implement efficient database operations and query strategies.
  • Implement authentication and authorization mechanisms.
  • Write clean, maintainable, and well-documented code.
  • Use Git for version control and commit your code regularly to the forked public Git repository in your profile.

Bonus Points:

  • Implement input validation and error handling for the APIs.
  • Document your APIs using Swagger.
  • Implement pagination or filtering options for retrieving product or order data.
  • Implement unit tests or integration tests to ensure the correctness of your code.
  • Implement data seeding or migration scripts for setting up and populating the database.

Submission Guidelines:

  1. Fork this GitHub repository Assignment Repo to your own GitHub account.
  2. Commit your code regularly and push the changes to your forked repository.
  3. Do not create a pull request; just submit your forked repository.
  4. Provide a DOCS.md file with all the technologies used and how to run the program locally.
  5. Once you have completed the assignment, share the repository URL with us via the submission form.
  • Submission Deadline: Thursday July 6, 2023, 4:00 PM

Note: The assignment is intentionally challenging, and you are not expected to complete all the bonus tasks. Focus on delivering high-quality code and meeting the core requirements first. Check out the discussion section of this repo to ask any related queries or doubts. Good luck with your assignment! If you have any questions, feel free to ask for clarification.

backend-assignment's People

Contributors

idonib avatar kafle1 avatar kunal-sah avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.