Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/rafaeldavish/pot-of-quotes-app

A web application that provides a list of quotes within a variety of categories as well provides a user registration and authentication system. This application uses persistent data storage to create a RESTful web application that allows users to perform Read, Create, Update, and Delete operations.
https://github.com/rafaeldavish/pot-of-quotes-app

boostrap flask flask-application flask-restful flask-sqlalchemy google-api json oauth2 vagrant virtualbox

Last synced: 8 days ago
JSON representation

A web application that provides a list of quotes within a variety of categories as well provides a user registration and authentication system. This application uses persistent data storage to create a RESTful web application that allows users to perform Read, Create, Update, and Delete operations.

Awesome Lists containing this project

README

        

# Pot of Quotes
> "Wise men learn more from fools than fools from wise men" – Cato

A web application that provides a list of quotes within a variety of categories as well provides a user registration and
authentication system. This application uses persistent data storage to create a RESTful web application that allows users
to perform Read, Create, Update, and Delete operations.

The registration and authentication its done using OAuth 2.0 to access Google API and utilize Google Sign-In.
The application also provides three secured JSON Endpoints.

## Implementation

- Python 2.7
- Jinja2
- Flask
- SQLAlchemy
- JSON
- OAuth2 authorization protocol
- Google API
- Bootstrap

## Installation
_To run, develop and test the application locally the following are needed._

1. Install [Vagrant](https://www.vagrantup.com/) and [Virtual Box](https://www.virtualbox.org/wiki/Downloads)
2. Clone **pot-of-quotes-app**
3. Launch the Vagrant VM
- `vagrant up`
- `vagrant ssh`
- `cd /vagrant`
4. Work on the Flask application locally in the vagrant directory
5. Run application within the VM.
- `python application.py`
6. Access and test application by visiting `http://localhost:8000` locally.

## JSON Endpoints

> Endpoint `/api/v1/categories` Returns a list of all the categories.

> Endpoint `/api/v1/categories/quotes` Returns a list of all the quotes under a category.

> Endpoint `/api/v1/categories/quotes/1` Returns a single quote under a category.

## Restful Endpoints
#### READ for Categories

`/categories/`

#### CRUD for Quotes
`/categories//quotes`

`/categories//quotes/`

`/categories//quotes/new`

`/categories//quotes//edit`

`/categories//quotes//delete`

## Sign-In with Google
`'/login'`

## TODO
- Sign Up
- like functionality
- Ability to add background images
- Share functionality

## ISSUES with
`www.potofquotes.pythonanywhere.com`
- Sign In not working
* Secret Key missing
- Broken "newQuote" link