Giter Site home page Giter Site logo

rest-api-node's People

Stargazers

 avatar  avatar

Watchers

 avatar  avatar

rest-api-node's Issues

Add Dark mode!

  • Add dark mode all over the website
  • You can use custom CSS or any libraries or any other methods you have.

Read Route

  • Make a read route(get method)
  • Read route should retrieve all the placed food orders
  • Add documentation(comments) wherever necessary

Add MongoDB code for delete route

  • Currently data is stored in a temporary variable so for persistent storage add a database(MongoDB in our case)
  • Do required changes in delete route

Add model for comments

  • Add a mongoose model for comments. Comments will appear below every single order's page
  • Fields should be description, order id(foreign key), user id(foreign key).

Create Route

  • Make a create route (post method)
  • For now just use variable to store the information provided by user
  • Information should contain 3 parts:- 1. Food item 2. Customer name 3. Food quantity. Additionally add an order id associated with the order which will be displayed on get request and further used to update and delete the order(should be handled by the developer and not the user).
  • Add documentation(comments) wherever necessary

Route to delete a comment

  • Add a route to delete a comment
  • Currently auth is not requires i.e. anyone can delete any comment
  • Route could be a nested route like /orders/:id/comments/:id/delete or use any other method you like.

Auth for creating a comment

  • Check if user is already signed-in before creating a comment
  • Whenever user presses the create comment button on an order's page, user should be able to view create comment page with the form if user has logged-in else redirect to register/sign-in page
  • Use passport.js or any 3rd party library according to your choice.

Form to add a comment

  • Create a form which will appear at every order's page to add a comment on that order
  • Form should contain only one field which is description. User id and order id should be handled by the developer

redesigning navbar UI

The Navbar's UI is really raw right now. It's fonts, background-colors, typography , icons and responsiveness on smaller screens can be worked upon to make it look more attractive.

Footer section on all pages

  • Add a footer section on every page which should contain features like email address(dummy/fake), contact number(dummy/fake), site logo(use MSTC logo), links for other pages, 2021 Copyright logo etc and any other features you can imagine.

Add auth in update route

  • Currently anyone can update anyone else's order, add auth such that only logged in users as well as the one who placed the order can only update the order
  • Use any method for auth(custom with passport.js or 3rd party with google, fb etc)
  • When user tries to update an order a new page is opened where user can register or log in
  • If successful then check if the same user created that order if that is true open the update page and let the user update the order
  • if unsuccessful redirect to landing page

Create a Landing Page

  • Currently index.html is the landing page which doesn't contains any styles or data related to project
  • Add the required information (navbar, background image, any fancy name of food system and css(anything you prefer))

Delete Route

  • Add delete route
  • It takes an order id and loops through all the orders to find that order, if found delete it else do nothing.
  • Add documentation(comments) wherever necessary

Add auth in create route

  • Currently anyone can create an order, add auth such that only logged in users can create an order
  • Use any method for auth(custom with passport.js or 3rd party with google, fb etc)
  • When user tries to create an order a new page is opened where user can register or log in
  • If successful then redirect to create order page
  • if unsuccessful redirect to landing page

Auth for deleting a comment

  • Currently anyone can delete any comment, add auth such that only the user who created the auth can delete it
  • Use any method you like or something from existing codebase

Create a page for posting an order

  • Currently there is no page with a form where users can go and fill out the form to place an order
  • So create a dedicated page with the form for users to place orders(should be able to add food name, customer name and quantity)
  • Check code for what should be the action for the post request

Add MongoDB code in read route

  • Currently data is stored in a temporary variable so for persistent storage add a database(MongoDB in our case)
  • Do required changes in read route

Schema for orders

  • Create a new folder named models and add schema for orders model(food name, customer name(foreign key), food quantity)
  • Create a schema for users(name and phone-no)
  • You may need to use mongoose for making the schemas(database used is MongoDB)

Route to update a comment

  • Add a route to update a comment
  • Currently auth is not requires i.e. anyone can update any comment
  • Route could be a nested route like /orders/:id/comments/:id/update or use any other method you like.

Read route for comments

  • Create a route to view all the comments for a particular order
  • It could be a nested route starting with something like /order/:id/comments or you can use any other idea as well.

Create a page for updating an order

  • Currently there is no page with a form where users can update their order
  • So create a dedicated page with the form where form should be pre-filled with the previous data for users to update their order(should be able to add food name, customer name and quantity)
  • Check code for what should be the action for the patch request

New Page for updating a comment

  • Add a new page whenever user clicks on update button to update a comment
  • The page should contain a pre-filled form with description of comment
  • After the user has made changes to the form they should be able to submit it to the respected route and changes should appear on that order's page
  • Currently no auth is required

Auth for updating comment

  • Currently anyone can update any comment, add auth such that only the user who created the auth can update it
  • Use any method you like or something from existing codebase

Add auth to delete route

  • Currently anyone can delete anyone else's order, add auth such that only logged in users as well as the one who created an order can delete that order
  • Use any method for auth(custom with passport.js or 3rd party with google, fb etc)
  • When user tries to delete an order a new page is opened where user can register or log in after that check if logged in user is the one who created that order if yes then delete the order and redirect to landing page else do not delete the order and redirect to landing page

Add MongoDB code to update route

  • Currently data is stored in a temporary variable so for persistent storage add a database(MongoDB in our case)
  • Do the required changes in update route

Add Pagination

  • Currently every order and comment can be seen in a single page or single API call
  • Apply pagination so only few comments(5/10/20) can be seen in a single page or by calling API once
  • To see other orders add a next and previous buttons to navigate to different pages

Design Change in Menu Page

Hi I want to improve the menu page currently cards are not user friendly

Can add some styling for the same and change the design

Please assign me this :-)

image

add show password option

The forms on login and signup page don't have view password functionality which makes it hard to find out what has been typed.

Also, the signup page reads Login instead of Signup

Screenshots :

Screenshot 2021-10-08 at 16 15 07

.

show password doesn't actually show password

Describe the bug
When you select to show password under register or login, it doesn't actually work.

To Reproduce
Steps to reproduce the behavior:

  1. Go to login or register page
  2. type in a password
  3. tick off that you want to show password

Expected behavior
password should appear

Screenshots
If applicable, add screenshots to help explain your problem.
image

Desktop (please complete the following information):

  • OS: [e.g. iOS]
  • Browser [e.g. chrome, safari]
  • Version [e.g. 22]

Smartphone (please complete the following information):

  • Device: [e.g. iPhone6]
  • OS: [e.g. iOS8.1]
  • Browser [e.g. stock browser, safari]
  • Version [e.g. 22]

Additional context
Add any other context about the problem here.

Create menu page

Hi @YashTrivedi21 , I talked to you before. I would like to create new page which is used to display food's pictures when user clicks on the item in the Menu section.
My current idea is:

  • Create a slider at the top of the page showing the most popular food or new food.
  • Create food items with some information such as name, price, etc.

If you have any suggestion, please let me know!

Update Route

  • Add Update Route(post/patch method)
  • This route takes an order id and values that need to be changed. It loops through all the orders to find that order. If found update it if not then simply do nothing
  • Add documentation(comments) wherever necessary

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.