Skip to content

ppjk1/catalog-app

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

21 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Music for the Masses

A basic catalog app demonstrating CRUD functionality and 3rd party authentication/authorization integrations for login and user permissions.

  • Categories of musical instruments are pre-defined.
  • Non-logged in users may view all items in the database and may access API endpoints.
  • Logged in users may add new items and edit or delete items they have previously created.

Requirements

Additional Requirements

  • Google and Facebook client secrets files are also required for app functionality and should be copied into the root directory of the app. These files will be provided to Udacity reviewers via separate zip file upload.

Quickstart

  • Ensure you have the required software installed (see Requirements)

  • To install the Google API Python Client:

    $ pip install --upgrade google-api-python-client or $ easy_install --upgrade google-api-python-client

  • Clone the repo: git clone https://github.com/ppjk1/catalog-app.git

  • Use a terminal to navigate into the catalog-app directory

  • Set up the database: python dbsetup.py

  • Populate the database: python populatedb.py

  • Run the app: python application.py

  • Navigate to the app via a web browser: http://localhost:8000

3rd Party Authentication Providers

The app allows a user to log in via a Google or Facebook account via a login link in the header of each page.

Log Out / De-authorization

Following Facebook recommended best practices, by default when a user clicks the Log Out link, the app clears the session but does NOT de-authorize the user. This streamlines the login process when the user next accesses the app.

A user may de-authorize the app at any time either through the native Facebook or Google interfaces, or via a link in the footer of the site.

API Endpoints

Aggregated catalog data can be downloaded via API endpoints (links are also available in the footer of each page):

What's Included

Within the download, you'll find the following files:

catalog-app/
  |--- README.md
  |--- application.py
  |--- dbsetup.py
  |--- populatedb.py
  |--- static/
       |--- css/
            |--- normalize.css
            |--- skeleton.css
            |--- styles.css
       |--- images/
            |--- footer_lodyas/
                 |--- footer_lodyas.png
                 |--- readme.txt
            |--- acoustic-025174_1020.jpg
            |--- acoustic-guitar.jpg
            |--- banjo.jpg
            |--- bass-guitar.jpg
            |--- drums.jpg
            |--- electric-guitar.jpg
            |--- F_icon.svg
            |--- favicon.png
            |--- Google_plus.svg
            |--- guitar-amp.jpg
            |--- mandolin.jpg
            |--- pedals.jpg
            |--- Udacity_Logo.svg
            |--- ukelele.jpg
       |--- js/
            |--- menu.js
  |--- templates/
       |--- catalog.xml
       |--- deauthorize.html
       |--- index.html
       |--- item-delete.html
       |--- item-detail.html
       |--- item-edit.html
       |--- item-new.html
       |--- items.html
       |--- main.html

Credits

About

Project 3 for Udacity Full Stack Developer Nanodegree

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published