This project is the fourth project in the curriculum of Udacity’s Full Stack Web Developer Nanodegree. This project uses Python, Flask and SQLAlchemy to create a database of categories and items and a CRUD web application. It uses Google authentication and a local permission system for user authorization. The project was styled using Bootstrap.
You must have Python installed on your machine. Check your Python version by running python -V
.
- Install VirtualBox
- Install Vagrant
- Install Git
- Download this repository. Click on the green
Clone or download
button, then click onDownload ZIP
. There's no need to log in or make a GitHub account. This will give you a directory namedfullstack-nanodegree-vm-master
. You will most likely find it in yourDownloads
folder. - Navigate to the
vagrant
directory inside offullstack-nanodegree-vm-master
. - Open the terminal app on your Mac or the command prompt on your Windows machine and run
vagrant up
. This may take some time as it will install an OS on your machine. Don't be alarmed by the green and red lines showing on your screen. - Run
vagrant ssh
. - Run
cd /vagrant
. This will take you to the shared folder between your VM and host machine. - Download this repository (dmahely/item-catalog) and place its contents in
fullstack-nanodegree-vm-master/vagrant/
. - Run
python db_setup
. This command will create a file nameditems.db
in the same directory. - Run
python db_population.py
. This command will populate the database with some items and categories. - Run
python webserver.py
. This command will get the server up and running. - Go to http://localhost:5000/ in your browser.
You should see a webpage that has some categories and some items.
I wrote all of the code except for the gconnect and gdisconnect methods, which were provided to me in a course by Udacity. I was inspired by how Dustin D'Avignon styled his own web app and decided to use Bootstrap to style mine as well.