6 Sharing with the internet

 

This chapter covers

  • The project application
  • What a web server does
  • The Flask microframework
  • Running the server

We’ve covered a lot of material in the previous chapters about being a developer. Now we’re going to put that knowledge to work. Choosing an application to create is tricky because the possibilities are nearly endless. The project you’ll be creating is a small but well-featured blogging platform we’ll be referring to as MyBlog. The MyBlog application will be available as a web-based Python application.

The MyBlog web application will provide tools with which users can join the blogging community and create blog posts. Registered users can post content using markdown for styling what they write. All users will be able to view the posted content, and registered users will be able to comment on it. Administrative users will be able to mark any content or comments active/inactive as they see fit. Registered users will be able to mark any content they’ve created as active/inactive.

6.1 Sharing your work

The MyBlog web application is a way to not only share your thoughts, and the thoughts of the application’s users, but to share your work. The application serves a particular purpose with a host of features. The work involved to pull together the technologies to create the MyBlog features is a skill worth showing off.

6.1.1 Web application advantages

6.1.2 Web application challenges

6.2 Servers

6.2.1 Request-response model

6.3 Web servers

6.4 Flask

6.4.1 Why Flask?

6.4.2 Your first web server

6.4.3 Serving content

6.4.4 More Jinja2 features

6.5 Running the web server

6.5.1 Gunicorn

6.5.2 Commercial hosting