{"id":20317437,"url":"https://github.com/thimc/go-xkcd-aggregator","last_synced_at":"2026-05-09T01:40:09.949Z","repository":{"id":195398908,"uuid":"692451246","full_name":"thimc/go-xkcd-aggregator","owner":"thimc","description":"a program that fetches comics from xkcd.com and stores them in a sqlite database","archived":false,"fork":false,"pushed_at":"2023-09-17T18:15:39.000Z","size":4,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-04T09:16:16.097Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Go","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/thimc.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":"2023-09-16T14:16:54.000Z","updated_at":"2023-09-16T14:17:05.000Z","dependencies_parsed_at":null,"dependency_job_id":"3227176a-649f-427d-aaa1-2f89faf942c3","html_url":"https://github.com/thimc/go-xkcd-aggregator","commit_stats":null,"previous_names":["thimc/go-xkcd-aggregator"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/thimc/go-xkcd-aggregator","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thimc%2Fgo-xkcd-aggregator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thimc%2Fgo-xkcd-aggregator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thimc%2Fgo-xkcd-aggregator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thimc%2Fgo-xkcd-aggregator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/thimc","download_url":"https://codeload.github.com/thimc/go-xkcd-aggregator/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/thimc%2Fgo-xkcd-aggregator/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":32804530,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-08T08:22:46.396Z","status":"ssl_error","status_checked_at":"2026-05-08T08:22:45.650Z","response_time":54,"last_error":"SSL_connect returned=1 errno=0 peeraddr=140.82.121.6:443 state=error: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":[],"created_at":"2024-11-14T18:32:01.386Z","updated_at":"2026-05-09T01:40:09.935Z","avatar_url":"https://github.com/thimc.png","language":"Go","funding_links":[],"categories":[],"sub_categories":[],"readme":"# xkcd aggregator\n\nThis program fetches [xkcd.com](https://xkcd.com) comics and stores them to a\nlocal SQLite database.\n\n## Usage\n```sh\nusage: goxkcd \u003ccommand\u003e \u003cargs\u003e\n  download       - downloads and indexes all missing xkcd entries\n  search \u003cterm\u003e  - looks up any xkcd entries matching \"term\"\n```\n\nThe output from `search` is TAB-separated which makes it very `grep`-able.\n\nSpecifying `-` as the search argument will cause program to dump all of its\nentries from the database.\n\n_Note: The `download` command will essentially DDOS xkcd.com the way it is\nsetup currently. The program checks the latest entry number and loops from zero\n(or from when you last stopped the program) up to the latest. From what I could\nread on the xkcd website there's no JSON endpoint for gathering all comics in\non request so just about 3000 HTTP requests is needed here unfortunately._\n\n\n## TODO\nThe database layer and the business logic are currently mashed up together to\ncreate the `xkcdstore` package which isn't ideal. the preferred solution here\nwould be to split them up.\n\nThe HTTP requests done to xkcd.com are using the default HTTP client using the\ndefault configuration, having the option to specify a timeout would be nice.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthimc%2Fgo-xkcd-aggregator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fthimc%2Fgo-xkcd-aggregator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fthimc%2Fgo-xkcd-aggregator/lists"}