{"id":13542962,"url":"https://github.com/pmbanugo/cron-atlas","last_synced_at":"2025-09-10T20:33:11.297Z","repository":{"id":213510864,"uuid":"734133087","full_name":"pmbanugo/cron-atlas","owner":"pmbanugo","description":"A modern cron job scheduler for the serverless era","archived":false,"fork":false,"pushed_at":"2024-04-03T18:15:55.000Z","size":1590,"stargazers_count":71,"open_issues_count":4,"forks_count":4,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-14T08:24:59.805Z","etag":null,"topics":["background-jobs","cron","cron-job","cronjob","cronjob-scheduler","remix-run","scheduled-functions","scheduled-jobs","scheduled-tasks","serverless","typescript"],"latest_commit_sha":null,"homepage":"https://cronatlas.com/","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"agpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/pmbanugo.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null}},"created_at":"2023-12-21T00:28:22.000Z","updated_at":"2024-12-05T11:31:29.000Z","dependencies_parsed_at":"2024-01-16T17:02:24.307Z","dependency_job_id":"2edc73f1-3ed3-4a5f-802b-750510ac8b31","html_url":"https://github.com/pmbanugo/cron-atlas","commit_stats":null,"previous_names":["pmbanugo/cron-atlas"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/pmbanugo/cron-atlas","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmbanugo%2Fcron-atlas","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmbanugo%2Fcron-atlas/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmbanugo%2Fcron-atlas/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmbanugo%2Fcron-atlas/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/pmbanugo","download_url":"https://codeload.github.com/pmbanugo/cron-atlas/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/pmbanugo%2Fcron-atlas/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":274523441,"owners_count":25301694,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-09-10T02:00:12.551Z","response_time":83,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["background-jobs","cron","cron-job","cronjob","cronjob-scheduler","remix-run","scheduled-functions","scheduled-jobs","scheduled-tasks","serverless","typescript"],"created_at":"2024-08-01T11:00:20.483Z","updated_at":"2025-09-10T20:33:11.247Z","avatar_url":"https://github.com/pmbanugo.png","language":"TypeScript","funding_links":[],"categories":["Built with Temporal"],"sub_categories":["Blog posts"],"readme":"# Cron Atlas - A modern job scheduler for the serverless era\n\nCron Atlas is a modern _(cron)_ job scheduler for the serverless era. It is a simple, reliable, and highly available job scheduler that allows you to schedule tasks that call your API endpoints. In other words, it calls your API endpoints where you deployed your job or function, at the defined schedule/interval.\n\n\u003e If you're hosting on Vercel, think of it as a more expressive Vercel Cron Jobs alternative. For Netlify functions, think of it as a better way to schedule function execution.\n\nIt is built on top of the following amazing tools and technologies:\n\n- **Remix**: for the UI where you configure and manage the job schedule. It uses Tailwind and shadcn/ui components.\n- **Turso (SQLite)**: for data storage.\n- **Drizzle ORM**\n- **Temporal**: For the reliable and durable execution of jobs.\n- **WorkOS \u0026 AuthKit**: For authentication and enterprise security.\n\n## Features\n\n- **Flexible Scheduling:** Define your job schedules using intuitive cron expressions, simple strings like '2hrs', or through a user-friendly calendar interface.\n- **Interactive UI:** Manage your jobs with ease, with functionalities to pause, instantly trigger, or delete jobs directly from the console.\n- **Support for Serverless Functions:** Seamlessly schedule AWS Lambda, Vercel/Netlify Functions, Cloudflare Worker, or any API endpoint. This extends your serverless architectures and applications with timed task execution.\n- **SQLite \u0026 Drizzle ORM:** Backed by the lightweight yet powerful Turso (SQLite) and Drizzle ORM, ensuring smooth data management and query execution.\n- **Temporal Reliability:** Leverage Temporal’s durable execution capabilities to ensure that your jobs are never lost and always executed on time.\n\n## Who's using Cron Atlas?\n\nWhile it's still early to have this list, here's a list of people and products that already use Cron Atlas in production.\n\n1. [FxRate Today](https://fxrate.today/): Used to schedule task that updates the exchange rates.\n2. [FlyCD](https://flycd.dev): Internally used for some data clean up and migration tasks.\n\nYou should give it a try today by signing up for the cloud version at [cronatlas.dev](https://cronatlas.dev/).\n\n\u003e Feel free to open a PR if you're already using Cron Atlas.\n\n## Getting Started\n\nWhile you can fork and run this on your computer, the fastest way to try it out as of today is to use the Cloud version which you can access at [cronatlas.fly.dev](https://cronatlas.dev/).\n\n\u003e [!NOTE]\n\u003e The cloud version is fully functional with the minimal features available today. However, the UI might not look as fancy and interactive for some people. So try it with less expectation on the UI, rather on the features and reliability of the product.\n\n### Local Set Up\n\n\u003e TODO:\n\n## Resources\n\nBlog posts \u0026 examples:\n\n- [Top Hacker News Story Aggregator Using Next.js, Resend and Cron Atlas](https://dev.to/pmbanugo/top-hacker-news-story-aggregator-using-nextjs-resend-and-cron-atlas-18k2). FYI, you can do something similar by just creating a scheduled function to run directly on Cron Atlas (see this [video](https://www.loom.com/share/666953f8492748f3abb87e3df56824d2?sid=11521f04-36d7-4191-818e-cbf1579e17a4) for how to do that.)\n\n## Contributing\n\nCron Atlas uses a permissive license and we welcome contributions from the community.\n\nIf you'd like to contribute, please fork the repository, make changes and submit pull requests (Thank you!).\n\n## Author\n\nBuilt by [Peter Mbanugo](https://pmbanugo.me/) - software engineer \u0026 founder of [FlyCD](https://flycd.dev/). He's based in Munich (Germany), so feel free to ask for a physical or virtual hangout.\n\nYou can connect with me on [Twitter](https://twitter.com/p_mbanugo) or [LinkedIn](https://www.linkedin.com/in/pmbanugo/).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpmbanugo%2Fcron-atlas","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fpmbanugo%2Fcron-atlas","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fpmbanugo%2Fcron-atlas/lists"}