{"id":25815314,"url":"https://github.com/gofarsi/scheduler","last_synced_at":"2025-06-15T10:38:42.301Z","repository":{"id":57650412,"uuid":"447633365","full_name":"GoFarsi/scheduler","owner":"GoFarsi","description":"Scheduler package is a zero-dependency scheduling library for Go","archived":false,"fork":false,"pushed_at":"2023-11-26T08:40:41.000Z","size":48,"stargazers_count":11,"open_issues_count":1,"forks_count":3,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-02T17:38:59.469Z","etag":null,"topics":["collaborate","github","go","golang"],"latest_commit_sha":null,"homepage":null,"language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/GoFarsi.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}},"created_at":"2022-01-13T14:38:16.000Z","updated_at":"2023-11-26T08:18:34.000Z","dependencies_parsed_at":"2023-11-26T09:26:41.774Z","dependency_job_id":"54be56e5-2505-4c42-b42b-46702d3ca01e","html_url":"https://github.com/GoFarsi/scheduler","commit_stats":null,"previous_names":["ja7ad/scheduler"],"tags_count":4,"template":false,"template_full_name":null,"purl":"pkg:github/GoFarsi/scheduler","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GoFarsi%2Fscheduler","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GoFarsi%2Fscheduler/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GoFarsi%2Fscheduler/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GoFarsi%2Fscheduler/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GoFarsi","download_url":"https://codeload.github.com/GoFarsi/scheduler/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GoFarsi%2Fscheduler/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259960589,"owners_count":22938092,"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","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":["collaborate","github","go","golang"],"created_at":"2025-02-28T04:19:49.353Z","updated_at":"2025-06-15T10:38:42.273Z","avatar_url":"https://github.com/GoFarsi.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Scheduler\n[![Go Reference](https://pkg.go.dev/badge/github.com/GoFarsi/scheduler.svg)](https://pkg.go.dev/github.com/GoFarsi/scheduler)\n\n[Scheduler](https://pkg.go.dev/github.com/GoFarsi/scheduler) package is a zero-dependency scheduling library for Go\n\n# Install\n```console\ngo get -u github.com/GoFarsi/scheduler\n```\n\n# Features\n- Scheduling your functions\n- In a scheduler instance, you can run more than one thousand jobs at a time (Max Job is `10.000`)\n- In the form of Safely, you can run your jobs and if a panic occurs, your jobs will be recovered and reported to the console (`func (j *Job) DoJobSafely(jobFunction interface{}, params ...interface{}) error`)\n- Multiple scheduler instances can be run simultaneously\n\n# Example\n\n**[More Example in](./_example)**\n\n```go\npackage main\n\nimport (\n\t\"fmt\"\n\t\"github.com/GoFarsi/scheduler\"\n)\n\nvar (\n\tSched = Scheduler.NewScheduler()\n)\n\nfunc main() {\n\tif err := Sched.Every(5).Second().Do(Greeting); err != nil {\n\t\tpanic(err)\n\t}\n\n\t\u003c-Sched.Start()\n}\n\nfunc Greeting() {\n\tfmt.Println(\"Hello, World!\")\n}\n```\n\n# Contributing\n\nWe'd love to see your contribution to the scheduler! you can contribute by following these steps :\n1. Fork the repository\n2. Create a new branch\n3. Make your changes\n4. Commit your changes\n5. Push your changes to the remote repository\n6. Create a pull request","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgofarsi%2Fscheduler","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgofarsi%2Fscheduler","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgofarsi%2Fscheduler/lists"}