{"id":19810442,"url":"https://github.com/decentldotland/reddit-archiver","last_synced_at":"2026-06-13T15:31:41.287Z","repository":{"id":108429468,"uuid":"464236950","full_name":"decentldotland/reddit-archiver","owner":"decentldotland","description":"archiving Reddit feeds about Ukrainian-Russian conflict on Arweave","archived":false,"fork":false,"pushed_at":"2022-03-02T22:40:57.000Z","size":78,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2025-01-11T06:48:53.630Z","etag":null,"topics":["archive","arweave","reddit","web3"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","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/decentldotland.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":"2022-02-27T19:48:02.000Z","updated_at":"2022-03-02T22:42:05.000Z","dependencies_parsed_at":"2023-04-12T15:17:04.302Z","dependency_job_id":null,"html_url":"https://github.com/decentldotland/reddit-archiver","commit_stats":null,"previous_names":[],"tags_count":4,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/decentldotland%2Freddit-archiver","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/decentldotland%2Freddit-archiver/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/decentldotland%2Freddit-archiver/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/decentldotland%2Freddit-archiver/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/decentldotland","download_url":"https://codeload.github.com/decentldotland/reddit-archiver/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241156295,"owners_count":19919336,"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":["archive","arweave","reddit","web3"],"created_at":"2024-11-12T09:21:35.974Z","updated_at":"2026-06-13T15:31:36.240Z","avatar_url":"https://github.com/decentldotland.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cp align=\"center\"\u003e\r\n  \u003ca href=\"https://decent.land\"\u003e\r\n    \u003cimg src=\"./src/utils/img/logo25.png\" height=\"124\"\u003e\r\n  \u003c/a\u003e\r\n  \u003ch3 align=\"center\"\u003e\u003ccode\u003e@decentdotland/reddit-archiver\u003c/code\u003e\u003c/h3\u003e\r\n  \u003cp align=\"center\"\u003earchiving Reddit's feeds on Arweave\u003c/p\u003e\r\n\u003c/p\u003e\r\n\r\n## Synopsis\r\nIn order to participate with the efforts of the communities of Arweave network in archiving public data about the Ukrainian-Russia war, the `reddit-archiver` repository is a customisable nodeJS server to pull feeds about a topic from Reddit, and archive it permanently on Arweave.\r\n\r\n\r\n## Usage\r\n\r\ncreate a `.env` file with the following key-value pairs:\r\n- JWK : your wallet's keyfile\r\n- QUERY_TOPICS (optional) : topic's keywords separated by commas (`russia,ukrain,war`)\r\n- ARCHIVING_FORMAT (optional): PRTSCR (screenshots) or METADATA (JSON). Default format is `METADATA`\r\n\r\nBy omitting `2nd` \u0026 `3rd` key-value pairs, the server will switch to the default pre-declared values. Omitting `1st` requires hardcoding the parsed string value of your `jwk` in `./src/utils/arweave.js` (not recommended).\r\n\r\nArchiving screenshots make use of `puppeteer`  that installs a new Chromium\r\n\r\nFrom Puppeteer's [repository](https://github.com/puppeteer/puppeteer#readme):\r\n\u003e When you install Puppeteer, it downloads a recent version of Chromium (170MB Mac, 282MB Linux, 280MB Win) that is guaranteed to work with the API\r\n\r\n### Running it\r\nHead to the repo's directory and run in shell:\r\n\r\n```sh\r\nnpm run archive\r\n```\r\n#### Note\r\nArchiving under `\"METADATA\"` format (`application/json`) is ~10x lower than `\"PRTSCR\"` (`image/png`)\r\n### Future usage\r\nThe server is customisable to archive about any topic declared in `QUERY_TOPICS`\r\n\r\n\r\n\u003e currently we maintain an archiving instance\r\n\u003e under [rRX4BQtmVuqnOtixO6BFZc1iCNbAdseFM5PXQTfS_hI](https://viewblock.io/arweave/address/rRX4BQtmVuqnOtixO6BFZc1iCNbAdseFM5PXQTfS_hI)\r\n\r\n## Archived Data Retrieval\r\nReddit posts archived via this code can be retrieve via graphQL by querying the protocol's specific tags:\r\n\r\n- `App-Name` : `reddit-archiver`\r\n- `Content-Type`: `application/json` || `image/png`\r\n- `archive-type`: `1` || `2`\r\n\r\n## License\r\nThis project is licensed under the [MIT](./LICENSE) license.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdecentldotland%2Freddit-archiver","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fdecentldotland%2Freddit-archiver","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fdecentldotland%2Freddit-archiver/lists"}