Skip to content

Latest commit

 

History

History
105 lines (65 loc) · 4.38 KB

README.md

File metadata and controls

105 lines (65 loc) · 4.38 KB

Book-A-Meal

Build Status Coverage Status Maintainability Test Coverage

Application Description

Book-A-Meal App is an application that allows customers to make food orders and helps the food vendor know what the customers want to eat.

View UI Template: https://faksam.github.io/Book-A-Meal/UI/
Test API Endpoints Here: https://bookameal.herokuapp.com/

Table of Content

Features

Below are the features of the Book-A-Meal App

Users

  • Users can signup and signin.
  • Caterer's

    • Caterer's can manage (i.e: add, modify and delete) meal options in the application.
    • Caterer's can set menu for a specific day.
    • Caterer's can view daily report's.
    • Caterer's can get all order history for a specific day.
  • Customer's

    • Customer's can view the menu for a specific day.
    • Customer's can manage (i.e: add and modify) his/her order.
    • Customer's can view his/her order history.

Technologies used

Modern JavaScript technologies were adopted for this project

ES2015: Also known as ES6 or ES2015 or ECMASCRIPT 6, is a new and widely used version of Javascript that makes it compete healthily with other languages. See here for more infromation.

NodeJS: Node.js is an open-source, cross-platform JavaScript run-time environment which allows you enjoy the features of Javascript off the web browsers and implement server-side web development. Visit here for more information.

ExressJS: This is the web application framework for Node.js Visit here for more information

Codes are written in accordance with Airbnb JavaScript style guide, see here for details.

Installation

  1. Clone this repository into your local machine:

git clone https://github.com/faksam/Book-A-Meal.git

  1. Install dependencies

npm install

  1. Start the application by running

npm start

  1. Open your browse and Navigate to

localhost:3456

  1. Install postman to test all endpoints

Testing

  • run test using npm run test

API Routes

HTTP VERBENDPOINTFUNCTIONALITY
GET api/v1/meals/ Get all the meal options
POST api/v1/meals/ Add a meal option
PUT api/v1/meals/:mealId Update the information of a meal option
DELETE api/v1/meals/:mealId Remove a meal option
POST api/v1/menu/ Setup the menu for the day
GET api/v1/menu/ Get the menu for the day
POST api/v1/orders Select the meal option from the menu
PUT api/v1/orders/:orderId Modify an order
GET api/v1/orders/ Get all the orders

License

ISC

Copyright 2018 Fakunle Mayowa Samuel

Permission to use, copy, modify, and/or distribute this software for any purpose with or without fee is hereby granted, provided that the above copyright notice and this permission notice appear in all copies.

THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.