Skip to content
Application that provides a list of items within a variety of categories as well as provides a user registration and authentication system
Branch: master
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
__pycache__
static
templates
FSND_item_catalog.py
README.md
client_secrets.json
database_setup.py

README.md

Item Catalog

Description:

This application allows signed-in users to add categories, e.g. Rock Climbing, Muscle Cars, Fitness, etc. and then add related items to those categories along with their descriptions. Users will also be able to edit and delete only those categories and items which they have created. In order to sign-in to the application a user must have / use their Google account login information.

There are also three JSON endpoints that will return:

  • All categories
  • All items for a particular category (must know the category id)
  • Single item for a particular category (must know the category id and item id)

Database Setup:

  • The application will create an SQLite .db file when it is ran the first time and stores it inside the directory where the FSND_item_catalog.py file is located.

  • The database contains three tables:

    User Table <Columns>:
        -   id
        -   name
        -   email
    
    Category Table <Columns>:
        -   id
        -   name
        -   user_id
    
    Item Table <Columns>:
        -   id
        -   name
        -   category_id
        -   user_id
    

Installation / Setup:

  • Download/Install Python 3: https://www.python.org/downloads/
  • In terminal: pip install flask sqlalchemy google-auth
  • From within a chosen directory, in the terminal run: git clone https://github.com/udac2018/FSND-item-catalog.git
  • In terminal: cd FSND-item-catalog
  • In terminal: python FSND_item_catalog.py
  • The above command will run a server at http://localhost:8000
  • Navigate to this address in your browser to work with the application.

JSON Endpoints:

  • All Categories: /JSON and /categories/JSON
  • All Items for a Category: /category/<int:category_id>/items/JSON
  • Single Item for a Category: /category/<int:category_id>/item/<int:item_id>/JSON

Test User Account

  • email: test.user.aws.012345@gmail.com
  • password: testuseraws012345
You can’t perform that action at this time.