go back  15 - Create a Simple Flask App

This challenge write-up first appeared on PyBites.

There is nothing like a challenge to bring out the best in man. - Sean Connery

Hi Pythonistas, a new week, a new 'bite' of Python coding! This week we’re going to get down and dirty with Python Flask. Flask is becoming a hot skill to have in your arsenal so we figure it’s about time we had a challenge on it! Enjoy!

The Challenge

We decided to split the challenge into two parts given how time consuming this may be for some. If you can manage it, go for the bonus too!

The base requirement:

  • Create a Flask web app that allows you to enter data via a web form
  • Data should then be displayed in some way (on the same page or on another page)
  • Data should be persistent. It’s up to you how you store the data, as long as it’s persistent.


  • Allow the stored data to be manipulated (deleted, edited).

An example use case for this could be a To-Do list app.

This is an open ended challenge. There are very few requirements and many possibilities! It doesn’t have to look pretty, as long as the functionality is there. Have fun with it, learning Flask can be incredibly satisfying!

What is Flask?

As we discussed in our beginner Flask article last week, it’s a web framework to allow you to create Python web applications.

For this challenge you should definitely have some HTML (and CSS) experience. It’ll definitely make things easier.

Helpful Resources

To help with your learning, here are some resources that should get you started:

Getting ready

See our INSTALL doc how to fork our challenges repo to get cracking. We updated this doc with additional instructions how to submit your solution to our community branch (and end-of-the-week review) via a Pull Request (PR).


You can find all our code challenges so far here. If you have ideas for a future challenge or find any issues, please contact us or open a GH Issue.

Last but not least: there is no best solution, only learning more and better Python. Good luck!

Keep Calm and Code in Python!

-- Bob and Julian

We use Python 3.8