Forth project from Udacity's Full-Stack Web Developer Nanodegree Program.
For this project I built a User Management App with following features:
- View, Add, Edit or Delete Users (CRUD operations)
- Dashboard
- Google authentication
- Authorization to edit/update only those Users that you created
- Generate random User data via API
Note: Google Account is required to Sign In to the app to Add, Edit or Delete Users. All other features available without sign in.
Each User
has basic information along with its Type
(New, Promotion, Pay-As-You-Go, Subscribed, Inactive, Cancelled).
There are two tables:
User
(to hold all Users)Type
(to hold all Types of Users)
id PK |
first_name | last_name | gender | dob | phone | address | city | state | country | post | register_date | type_id FK |
picture | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
1 | Don | Arnold | [email protected] | M | 1970-03-05 | (973)-130-6982 | 3741 Spring St | Eugene | New York | US | 12594 | 2013-05-13 | 1 | picture_url |
id PK |
type |
---|---|
1 | new |
Install VirtualBox and Vagrant.
Clone this repo into user-app
folder:
$ git clone https://github.com/dimak1/udacity-fsnd-project4.git user-app
Start virtual machine and log in to it:
$ cd user-app
$ vagrant up
$ vagrant ssh
In case of any issues, see Troubleshoot Guide below.
Once logged in, populate database and run the app:
$ cd /vagrant
$ python3 populate_database.py
$ python3 application.py
Go to application at http://localhost:5000/
Troubleshoot Guide:
If vargrant is not starting up, run vagrant global-status
and then vagrant halt <id>
or vagrand destroy <id>
on vagrant machines that are not needed anymore. Run vagrant up
again.