--- id: sqlalchemy-celery-beat version: "0.8.4" license: MIT license_treatment: permissive maintenance: aging --- # sqlalchemy-celery-beat — A Scheduler Based SQLalchemy For Celery License: permissive · Maintenance: aging · Downloads: 91.1K/mo ## What it is and what it does sqlalchemy-celery-beat replaces Celery Beat's in-memory scheduler with a database-backed alternative, storing periodic task definitions in SQLAlchemy-compatible databases like SQLite, MySQL, or PostgreSQL. This allows you to add, modify, and disable scheduled tasks without restarting the beat process—a capability similar to django-celery-beat but for non-Django applications like Flask or FastAPI. The package provides models for interval-based schedules (every N seconds/minutes/hours/days) and crontab-based schedules, letting you define periodic tasks programmatically through your application code. You configure a database URI in your Celery config, and the scheduler queries that database at runtime to determine which tasks to execute. It depends on celery, sqlalchemy, tzdata for timezone handling, and ephem for astronomical calculations. Use it for: - Store Celery periodic tasks in a database for Flask or FastAPI applications that need Django-like scheduling without Django. - Dynamically add or modify scheduled tasks at runtime without restarting the Celery beat process. - Run multiple beat instances against the same database to coordinate task scheduling across a distributed system. - Use crontab-style schedules with timezone awareness for tasks that must run at specific times across regions. - Manage task arguments and expiry times through database records instead of configuration files. ## Worth the install? AI-flagged interpretation of the facts above — verify before relying. Provides a SQLAlchemy-backed scheduler for Celery that stores periodic task definitions in a relational database instead of configuration files, allowing dynamic task scheduling without restarting the beat process. Yes, with conditions. Install if you need dynamic Celery task scheduling in a non-Django application and can accept that the project is in Alpha with 451 days since the last release. The low install friction and permissive MIT license are favorable, and there are no known vulnerabilities. However, verify compatibility with your specific celery and sqlalchemy versions before production use, and monitor the repository for updates given the aging maintenance status. ## Install pip install sqlalchemy-celery-beat uv add sqlalchemy-celery-beat poetry add sqlalchemy-celery-beat ## Installing sqlalchemy-celery-beat Before you install: Low friction install with four straightforward runtime dependencies. Maintenance status is aging—last release was 451 days ago—but the repository remains active and unarchived with recent commits, suggesting the project is maintained but not actively developed. License in practice: MIT license is permissive, allowing use in commercial and proprietary projects with minimal restrictions beyond attribution. Quickstart: pip install sqlalchemy-celery-beat from sqlalchemy_celery_beat.models import PeriodicTask, IntervalSchedule, Period from sqlalchemy_celery_beat.session import SessionManager session_manager = SessionManager() session = session_manager.session_factory('sqlite:///schedule.db') schedule = IntervalSchedule(every=10, period=Period.SECONDS) session.add(schedule) session.commit() task = PeriodicTask( schedule_model=schedule, name='my_task', task='proj.tasks.my_task' ) session.add(task) session.commit() Requires celery >= 5.0 and sqlalchemy >= 1.4 to be installed separately before use. Verify before relying: - Whether the aging maintenance status (451 days since last release) affects compatibility with recent celery or sqlalchemy versions - Production readiness and stability guarantees given the Alpha development status classifier ## Package facts - License: MIT (permissive) - Python support: unspecified - Install friction: low - Maintenance: aging - Downloads: 91.1K/month (top 15,000 on PyPI) - Known vulnerabilities: none known ## Tags celery beat database scheduler, sqlalchemy celery periodic tasks, dynamic celery task scheduling, celery beat without django, persistent celery schedule storage, celery scheduler sqlalchemy, manage celery tasks in database, celery-scheduler, task-orchestration, database-backed [View on SkillFed](https://skillfed.io/packages/sqlalchemy-celery-beat) · [View on PyPI](https://pypi.org/project/sqlalchemy-celery-beat/)