Full stack JavaScript app that lets users log in to customize burger and order pizza at restaurants in specific suburb.
- As an unauthenticated user, I can search restaurants in specific suburb.
- As an unauthenticated user, I can customize burger and choose pizza menu items.
- As an unauthenticated user, I can sign up locally, sign in locally or using facebook, google account.
- As an unauthenticated user, I will be prompted to log in if I tried to order
- As an authenticated user, I can add my customized burger and pizza menu items to shoppingcart.
- As an authenticated user, I can view items in my shoppingcart.
- As an authenticated user, I can fill my address to finalize buying.
- As an authenticated user, I can view orders.
- As an authenticated user, I can log out.
- the GUI will display responsively on screen with different widths and height.
- Any error(GUI error,network error,system error etc)will get immediately clear hint on the current page or a modal dialog
- Passport (Local/Google/Facebook)
- React
- Redux
- React-Redux
- Semantic-ui-react
- Redux Form
- React google maps
- React thunk
- Webpack
- Babel
- sass
- jest
- enzyme
- Node
- Express
- MongoDB
- Mongoose
Provided node and NPM are installed, enter the following CLI command to install dependencies:
$ npm install
A Google app ID, Google app secret, Facebook app ID, Facebook app secret and valid Mongo URI are required. Check the respective documentation to set them up. these values could be set up at /config/dev.js for development version, at /config/prod.js for production version.
To run the server side,enter the following command:
$npm run start
To run the client side,enter the following command:
$npm run client
To run the whole project,enter the following command:
$npm run dev
You can view a live demo of the app at https://burgerserver.herokuapp.com/