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

https://github.com/solygambas/flask-blogging-platform

A blogging platform using Flask, Jinja2 and Flask-SQLAlchemy.
https://github.com/solygambas/flask-blogging-platform

flask flask-migrate flask-sqlalchemy jinja2 postgresql python

Last synced: about 2 months ago
JSON representation

A blogging platform using Flask, Jinja2 and Flask-SQLAlchemy.

Awesome Lists containing this project

README

          

# Blogging Platform

A blogging platform using Flask, Jinja2 and Flask-SQLAlchemy.



## Flask basics

- handling routes, request hooks and view functions with Flask.
- working with Jinja2 template engine, Flask-Bootstrap and Flask-Moment.
- creating web forms with Flask-WTF.
- displaying user-friendly messages with flash().
- managing the database with Flask-SQLAlchemy.
- updating the database model with Flask-Migrate.
- sending emails with Flask-Mail.
- using packages and modules to structure a large application that scales.

## Blogging Platform

- implementing user authentication with Flask-Login and Werkzeug.
- registering new users and generating confirmation tokens with itsdangerous.
- managing roles and permissions for users, moderators and administrators.
- handling user profiles and displaying user avatars with Gravatar.
- building a blogging feature by reusing templates.
- paginating item lists and creating fake blog post data with Faker.
- enabling rich-text posts with Markdown and Flask-PageDown.
- displaying followers on the profile page.
- showing followed posts on the home page.
- handling comment moderation.

## RESTful API

- using a Flask-based RESTful API to expose app functionality to smartphones, tablets and other third-party clients.
- managing user authentication with Flask-HTTPAuth and generating tokens.
- serializing resources to and from JSON.
- handling pagination of large resource collections.
- testing web services with HTTPie.

## Testing

- learning how to run unit tests with Coverage, Flask test client and Selenium.
- enhancing application performance by logging slow database performance and high CPU consumption.

## Deployment

- deploying with a PostgreSQL database.

Based on [Flask Web Development](https://www.amazon.fr/Flask-Web-Development-Developing-Applications/dp/1491991739) by Miguel Grinberg (2nd edition, 2018)