Developed for project 4 of 6 as part of the Udacity Full Stack Web Developer Nanodegree.
A web app made for the Udacity Full Stack Nanodegree program, with Python.
- Full CRUD functionality
- Google oAuth user verification
- Python generated HTML interface
Python 2.7.13 (Included with Vagrant)
The vagrant file contained within this repository will automatically configure the remaining requirements, which are listed below for reference.
- SQL Alchemy
- postgresql
- psycopg2
- flask
- flask-login
- oauth2client
- requests
- werkzeug
- httplib2
- Install VirtualBox and Vagrant, using the default installation options.
- Open a command terminal in the folder you extracted this repository in.
- Bring Vagrant online by executing the following commands in a command terminal.
$ vagrant up
$ vagrant ssh
-
Information on how to configure the system will be automatically imported from the Vagrantfile and pg_config.sh.
-
Run database_setup.py:
python database_setup.py
- Populate the database by running lotsofmenus.py,:
python lotsofmenus.py
- Finally, launch the program by executing project.py:
python project.py
- Open your web browser and navigate to:
http://localhost:8000/
- By default, you will not be able to edit the base resturant menus, as you are not the admin/original user.
- To test the program and CRUD operations, press 'Add New Restaurant' and make a new entry.
- Once created, navigate to your new Restaurant on the main menu and you can now create, edit and delete freely.
All restaurants:
http://localhost:8000/restaurant/JSON
All menu items for a specific RESTAURANT_ID:
http://localhost:8000/restaurant/<RESTAURANT ID>/menu/JSON
Single menu item:
http://localhost:8000/restaurant/<RESTAURANT ID>/menu/<ITEM ID>/JSON
Skeleton / base code from multiple Udacity sources:
