Easy Dining is a restaurant reservation website. In this website, user is able to perform the main functions as followed:
- Sigh up with unique username;
- Log in and log out;
- User is able to search restaurant by keywords;
- User is able to view restaurant details;
- User is able to view the menu of the reserved restaurant online.
- User is able to make a reservation only when he has an account logged in.
- User is able to select time of reservation and number of people for the reservation;
- User is able to check his reservation records on the website;
- User is able to change or cancel the upcoming and future reservation;
- Email will be sent to user if reservation is made successfully.
This website mainly utilizes React for the front-end, Node.js for the server side.
For development, you are required to install Node,React on your environement.
Node is really easy to install & now include NPM. You should be able to run the following command after the installation procedure below.
$ node --version
v0.10.24
$ npm --version
1.3.21
You will need to use a Terminal. On OS X, you can find the default terminal in
/Applications/Utilities/Terminal.app
.
Please install Homebrew if it's not already done with the following command.
$ ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
If everything when fine, you should run
brew install node
sudo apt-get install python-software-properties
sudo add-apt-repository ppa:chris-lea/node.js
sudo apt-get update
sudo apt-get install nodejs
Just go on official Node.js website & grab the installer.
Also, be sure to have git
available in your PATH, npm
might need it.
$ git clone git@github.com:WY0603/AIP.git
$ cd AIP/server
$ npm install
1.open file: /client/node_modules/react-scripts/scripts/start.js.
2.modify const DEFAULT_PORT = parseInt(process.env.PORT, 10) || 3000;. to const DEFAULT_PORT = parseInt(process.env.PORT, 10) || 8080;.
3.open terminal and get into project folder.
4.input node server.js to start back-end server.
$ cd AIP/client
$ npm start
$ npm run build
Some packages usages might change so you should run npm prune
& npm install
often.
A common way to update is by doing
$ git pull
$ npm prune
$ npm install
To run those 3 commands you can just do
$ npm run pull
Note: Unix user can just link the git-hooks/post-merge
:
$ npm run create-hook-symlinks
This hook will npm prune && npm install
each time you git pull
something if the package.json
has been modified.
This hook will just ensure you will commit something not broken bye pruning npm packages not in the package.json
& eventually reinstall missings/not correctly removed packages.
Then it will try a production build.
Add additional notes about how to deploy this on a live system
- React - The web framework used
- Express - Back-end framework used
- EC2 - Used to deploy our application
Please read CONTRIBUTING.md for details on our code of conduct, and the process for submitting pull requests to us.
We use SemVer for versioning. For the versions available, see the tags on this repository.
- Zeyuan Lin
- Jie Jing
- Yao Wang
This project is licensed under the MIT License - see the LICENSE.md file for details