FastScheduler Simple, lightweight task scheduler for Python with async support, timezone handling, cron expressions, and a beautiful real-time dashboard. If this saves you time, βοΈ the repo and open an issue for ideas β I'm actively improving it. Features π― Simple decorator-based API - Schedule tasks in one line - Schedule tasks in one line β‘ Async/await support - Native async function support - Native async function support π Timezone support - Schedule jobs in any timezone - Schedule jobs in any timezone π Cron expressions - Complex schedules with cron syntax - Complex schedules with cron syntax πΎ Persistent state - Survives restarts, handles missed jobs - Survives restarts, handles missed jobs π¨ FastAPI dashboard - Beautiful real-time monitoring UI - Beautiful real-time monitoring UI π Automatic retries - Configurable retry with exponential backoff - Configurable retry with exponential backoff β±οΈ Job timeouts - Kill long-running jobs automatically - Kill long-running jobs automatically βΈοΈ Pause/Resume - Control jobs without removing them - Control jobs without removing them π Dead Letter Queue - Track and debug failed jobs Installation # Basic installation pip install fastscheduler # With FastAPI dashboard pip install fastscheduler[fastapi] # With cron expression support pip install fastscheduler[cron] # All features pip install fastscheduler[all] Quick Start from fastscheduler import FastScheduler scheduler = FastScheduler ( quiet = True ) @ scheduler . every ( 10 ). seconds def task (): print ( "Task executed" ) @ scheduler . daily . at ( "14:30" ) async def daily_task (): print ( "Daily task at 2:30 PM" ) scheduler . start () Scheduling Options @ scheduler . every ( 10 ). seconds @ scheduler . every ( 5 ). minutes @ scheduler . every ( 2 ). hours @ scheduler . every ( 1 ). days @ scheduler . daily . at ( "09:00" ) # Daily at 9 AM @ scheduler . hourly . at ( ":30" ) # Every hour at :30 @ scheduler . weekly . monday . at ( "10:00" ) # Every Monday at 10 AM @ sch...
First seen: 2026-01-13 18:06
Last seen: 2026-01-13 20:06