{"id":20571111,"url":"https://github.com/prixladi/tusker","last_synced_at":"2026-04-10T04:56:15.736Z","repository":{"id":189478546,"uuid":"597665596","full_name":"prixladi/tusker","owner":"prixladi","description":"Configurable task queue service with administration","archived":false,"fork":false,"pushed_at":"2024-10-24T20:51:04.000Z","size":230,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-01-16T21:13:36.105Z","etag":null,"topics":["deno","docker","mongodb","sass","solidjs","task-runner","typescript"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/prixladi.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":"2023-02-05T08:52:57.000Z","updated_at":"2023-08-20T08:51:05.000Z","dependencies_parsed_at":"2023-08-20T11:11:57.984Z","dependency_job_id":null,"html_url":"https://github.com/prixladi/tusker","commit_stats":null,"previous_names":["prixladi/tusker"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prixladi%2Ftusker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prixladi%2Ftusker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prixladi%2Ftusker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/prixladi%2Ftusker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/prixladi","download_url":"https://codeload.github.com/prixladi/tusker/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":242187631,"owners_count":20086217,"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":["deno","docker","mongodb","sass","solidjs","task-runner","typescript"],"created_at":"2024-11-16T05:14:32.250Z","updated_at":"2025-10-03T17:57:40.888Z","avatar_url":"https://github.com/prixladi.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Tusker\n\nSelfhosted task runner supporting multiple queues, retrying, limits and many more settings such as:\n\n- `maximum` running tasks in parallel\n- `maximum` number tasks running each second\n- `maximum` retries of each task\n- `maximum` backoff of failed task\n- `minimum` backoff after failed task\n\nAllows (delayed) execution of tasks.  (`executor`)\n\nOn application level queues and tasks can be created using REST Api. (`api`)\n\nAlso contains simple administration where user can configure queues. (`admin`)\n\n### WARNING\n\nBecause there is no authorization yet, the application is intended to be running in your internal network **WITHOUT** exposition to the internet. Some kind of authorization and permission system is planned in the future. \n\n## Services\n\nBrief description of existing services.\n\n- `api` - Deno service with REST Api for configuring queues and running tasks.\n- `executor` - Deno service that executes tasks in queues.\n- `admin` - Solidjs web app with administration. \n\n## Running application\n\nFor running application in production mode all you need is `docker` and `docker-compose`.\n\n### Start\n\n```bash\ndocker-compose up -d\n```\n\nAfter successfully starting application using `docker-compose` administration will listen on `localhost:80` and api on `localhost:8000`.\n\n## Application\n\n![list](assets/list.png)\n\n![edit](assets/edit.png)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprixladi%2Ftusker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fprixladi%2Ftusker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fprixladi%2Ftusker/lists"}