--- id: flask-executor version: "1.0.0" license: MIT license_treatment: permissive maintenance: abandoned --- # Flask-Executor — An easy to use Flask wrapper for concurrent.futures License: permissive · Maintenance: abandoned · Downloads: 465.3K/mo ## What it is and what it does Flask-Executor is a thin wrapper around Python's concurrent.futures that integrates ThreadPoolExecutor and ProcessPoolExecutor into Flask applications. It lets you submit background tasks from request handlers without setting up separate worker processes or complex task queue infrastructure. The package automatically wraps submitted callables with copies of the current Flask application and request contexts, so background code can access flask.current_app, flask.request, and flask.g as if it were running in the request handler. You can submit tasks directly via executor.submit(), store futures for later retrieval, decorate functions with @executor.job for Celery-like syntax, attach default callbacks to all futures, or configure exception propagation to surface errors from background threads. It depends only on Flask and the standard library's futures module, making it a minimal alternative to full task queues when you don't need distributed workers or persistence. Use it for: - Send emails or notifications asynchronously after a user action without blocking the HTTP response. - Run CPU-intensive calculations in background threads while returning immediately to the client. - Batch process data or generate reports in the background and retrieve results later via stored futures. - Decorate utility functions with @executor.job to submit them like Celery tasks without a separate broker. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Flask-Executor wraps Python's concurrent.futures module to provide a lightweight in-process task queue for Flask applications, letting you submit background tasks without separate worker processes. Yes, if you need a lightweight in-process task queue for Flask and don't require distributed workers or long-term maintenance. The package is stable and has no known vulnerabilities, but it is abandoned—no updates since early 2023. Use it for simple background tasks in small to medium applications, but plan to monitor Flask compatibility yourself or migrate to an actively maintained alternative (like Celery or RQ) if your needs grow. ## Install pip install flask-executor uv add flask-executor poetry add flask-executor ## Installing Flask-Executor Before you install: Installation is straightforward with low friction. However, the package is abandoned—last release was 2022-08-18 and no commits since 2023-01-14. It will continue to work with current Flask and Python versions, but you should expect no maintenance or security updates. License in practice: MIT license is permissive and imposes no restrictions on use or redistribution. You can use this package freely in commercial or proprietary projects. Quickstart: pip install flask-executor from flask import Flask from flask_executor import Executor app = Flask(__name__) executor = Executor(app) executor.submit(some_function, arg1, arg2) Verify before relying: - Whether the package remains compatible with recent Flask and Python versions despite being unmaintained since early 2023. - Whether ThreadPoolExecutor context propagation (application and request contexts) works as documented with current Flask internals. ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: low - Maintenance: abandoned - Downloads: 465.3K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags flask background tasks, concurrent.futures wrapper, lightweight task queue, flask async jobs, threadpool executor flask, in-process task scheduling, task-queue, background-jobs, concurrency [View on SkillFed](https://skillfed.io/packages/flask-executor) · [View on PyPI](https://pypi.org/project/flask-executor/)