Skip to content

codeBlock-1984/iMenu

Repository files navigation

iMenu

Build Status Coverage Status Maintainability

iMenu is an online application for booking your meals on the go. Sign up is easy and placing an order is hassle free and fast. The UI is appealing and interactive.

Getting Started

prerequisites

You will need the following tools to get the project running

Dependencies

  • Express - A Node.js framework
  • Body-parser - A middleware for accessing request parameters through the req.body property
  • Babel - A Javascript Transpiler for ES6 and above.

Dev Dependencies

  • Nodemon: Node package for automatically restarting the project whenever changes are made
  • Morgan: For logging request details in console
  • Eslint: Javacript linting package
  • Airbnb: Linting style guide
  • Mocha: Testing Framework
  • Chai and Chai-http: Mocha Assertion libary and plugin
  • Coveralls: Used for coverage test

How to Start the Project on local environment

  • git clone [email protected]:codeBlock-1984/iMenu.git
  • git checkout develop
  • $ npm install

User Interface

The UI is hosted on gh-pages

Features

  • Customer login/signup page
  • Orders page: Customer can place an order from the day's menu
  • Menu setup page: Caterer can setup menu for the day
  • Meal options page: Caterer can create, edit, or delete meal options.
  • Records page: Caterer can view all records of orders and transaction details for the day

API

The API is hosted on Heroku

Features

The following API Endpoints are available for requests:

  • Create a meal [POST] https://imenu-app.herokuapp.com/api/v1/meals
  • Get all meals [GET] https://imenu-app.herokuapp.com/api/v1/meals
  • Get a meal by ID [GET] https://imenu-app.herokuapp.com/api/v1/meals/<mealId>
  • Modify a meal by ID [PUT] https://imenu-app.herokuapp.com/api/v1/meals/<mealId>
  • Delete a meal by ID [DELETE] https://imenu-app.herokuapp.com/api/v1/meals/<mealID>
  • Setup a menu [POST] https://imenu-app.herokuapp.com/api/v1/menus
  • Get a menu by date [GET] https://imenu-app.herokuapp.com/api/v1/menus/<menuDate>
  • Get all menus [GET] https://imenu-app.herokuapp.com/api/v1/menus
  • Get orders by date [GET] https://imenu-app.herokuapp.com/api/v1/orders/<ordersDate>
  • Place an order [POST] https://imenu-app.herokuapp.com/api/v1/orders
  • Modify an order by ID [PUT] https://imenu-app.herokuapp.com/api/v1/orders/<orderId>
  • Delete an order by ID [GET] https://imenu-app.herokuapp.com/api/v1/orders/<orderId>

Tests

To run the automated test suite run the command below in your terminal

  • npm run test

About

Secure online meal-booking app

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published