{"id":18136180,"url":"https://github.com/effigies/santomatic","last_synced_at":"2025-04-06T16:48:34.380Z","repository":{"id":66826359,"uuid":"421669280","full_name":"effigies/santomatic","owner":"effigies","description":"Secret Santa-o-matic","archived":false,"fork":false,"pushed_at":"2022-10-31T15:26:03.000Z","size":17,"stargazers_count":0,"open_issues_count":1,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-02T09:47:36.313Z","etag":null,"topics":["secretsanta"],"latest_commit_sha":null,"homepage":"https://effigies.github.io/santomatic","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/effigies.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":"2021-10-27T03:53:59.000Z","updated_at":"2021-12-16T03:33:04.000Z","dependencies_parsed_at":"2023-03-12T23:15:33.862Z","dependency_job_id":null,"html_url":"https://github.com/effigies/santomatic","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/effigies%2Fsantomatic","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/effigies%2Fsantomatic/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/effigies%2Fsantomatic/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/effigies%2Fsantomatic/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/effigies","download_url":"https://codeload.github.com/effigies/santomatic/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247517921,"owners_count":20951716,"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":["secretsanta"],"created_at":"2024-11-01T14:11:19.205Z","updated_at":"2025-04-06T16:48:34.350Z","avatar_url":"https://github.com/effigies.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Santomatic\n\nSantomatic is a [Pyodide](https://pyodide.org/) app for assigning people to give\ngifts to each other in a [Secret Santa](https://en.wikipedia.org/wiki/Secret_Santa)\nsetup.\n\nThe basic principles are as follows:\n\n1) Partners are assumed to have their own arrangements, so should not get each other.\n2) Gifters should not get the same giftee too often.\n\nTo operationalize (2), gifters *cannot* get the same giftee two years running.\nAdditionally, they should be more likely to get someone the longer ago they last\ngot them.\n\nFinally, this algorithm prefers to have complete cycles, such that if there is any\nway to satisfy the constraints, 6 people will be arranged\nA -\u003e B -\u003e C -\u003e D -\u003e E -\u003e F -\u003e A, rather than A -\u003e B -\u003e C -\u003e A and D -\u003e E -\u003e F -\u003e D.\n\nConfiguration is done via a basic YAML (see [example.yml](example.yml)).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feffigies%2Fsantomatic","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Feffigies%2Fsantomatic","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Feffigies%2Fsantomatic/lists"}