Skip to content
Projects

miguelgrinberg/flask-celery-example

View on GitHub

miguelgrinberg/flask-celery-example has 1,210 GitHub stars and 314 forks. GitHot measured +1 in 7 days. Last checked 2026-11-10 21:58 UTC. Last push 2023-01-03.

How these counts are measured

This repository contains the example code for my blog article Using Celery with Flask.

Measured star growth

in 24h
Update delayed
in 7 days
+1
in 15 days
Collecting history
in 1 month
Collecting history

Net star changes over overlapping periods, not daily totals. Missing measurements are left blank. Stars measure attention, not software quality.

README.md

Original

Using Celery with Flask

This repository contains the example code for my blog article Using Celery with Flask.

The application provides two examples of background tasks using Celery:

  • Example 1 sends emails asynchronously.
  • Example 2 launches one or more asynchronous jobs and shows progress updates in the web page.

Here is a screenshot of this application:

Quick Setup

  1. Clone this repository.
  2. Create a virtualenv and install the requirements.
  3. Open a second terminal window and start a local Redis server (if you are on Linux or Mac, execute run-redis.sh to install and launch a private copy).
  4. Open a third terminal window. Set two environment variables MAIL_USERNAME and MAIL_PASSWORD to a valid Gmail account credentials (these will be used to send test emails). Then start a Celery worker: venv/bin/celery -A app.celery worker --loglevel=info.
  5. Start the Flask application on your original terminal window: venv/bin/python app.py.
  6. Go to http://localhost:5000/ and enjoy this application!

For details on how this all works, see my article Using Celery with Flask.

Explore related projects