{"id":19549118,"url":"https://github.com/bsfishy/job-server","last_synced_at":"2025-06-29T14:33:06.806Z","repository":{"id":243793853,"uuid":"813465012","full_name":"BSFishy/job-server","owner":"BSFishy","description":"A proof-of-concept stateful and contextful job server implemented in Rust","archived":false,"fork":false,"pushed_at":"2024-06-11T06:27:21.000Z","size":5,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-06-26T03:16:57.374Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Rust","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/BSFishy.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,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-06-11T06:23:33.000Z","updated_at":"2024-06-11T06:27:55.000Z","dependencies_parsed_at":"2024-06-11T07:39:52.365Z","dependency_job_id":"6c318340-25c4-4837-a34f-c82b9e6ea513","html_url":"https://github.com/BSFishy/job-server","commit_stats":null,"previous_names":["bsfishy/job-server"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/BSFishy/job-server","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BSFishy%2Fjob-server","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BSFishy%2Fjob-server/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BSFishy%2Fjob-server/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BSFishy%2Fjob-server/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BSFishy","download_url":"https://codeload.github.com/BSFishy/job-server/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BSFishy%2Fjob-server/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":262609397,"owners_count":23336693,"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":[],"created_at":"2024-11-11T03:57:59.079Z","updated_at":"2025-06-29T14:33:06.782Z","avatar_url":"https://github.com/BSFishy.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"# job server\n\nThis repository implements a rudimentary job server in Rust. The idea is to have\na pool of threads that listen for jobs. As soon as one becomes available, the\nthread executes it. Once all jobs have been executed, cleanly exit.\n\nThe implementation is similar to a green threads style approach, with the\ndifference that state is associated with each job. Each job action can have\narbitrary arguments passed as inputs, allowing for context and state to be\nmanaged and maintained externally, relative to the job.\n\nI have primarily implemented this as an exercise in preparation for implementing\na compiler. It is designed so that additional jobs can be queued using closures,\nwhich could enable a highly parallelized compilation process.\n\nFor example, compiling a single file might include multiple other files. The\nprocess would be split up into logical steps, i.e. lexing, parsing, semantic\nanalysis, code generation, etc. These steps could be implemented using the job\nserver so that the process is parallelized and is stateful.\n\n## maintenance\n\nI have zero intention of maintaining this project. If you find it useful, great!\nIf you want to contribute, cool. Just know, I may not actually look at or do\nanything with your contribution. I have licensed the project under the MIT\nlicense, so feel free to use the code in any way you want. Which means, if you\nwant to turn it into something, feel free to make a fork and build to your\nheart's intent.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbsfishy%2Fjob-server","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbsfishy%2Fjob-server","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbsfishy%2Fjob-server/lists"}