{"id":22585369,"url":"https://github.com/helloimalastair/thea","last_synced_at":"2025-04-10T20:21:55.525Z","repository":{"id":265009913,"uuid":"814565528","full_name":"helloimalastair/thea","owner":"helloimalastair","description":"Save RSS Feeds to your Pocket account ✨automagically✨","archived":false,"fork":false,"pushed_at":"2024-06-13T08:58:55.000Z","size":20,"stargazers_count":4,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-05T21:46:48.962Z","etag":null,"topics":["pocket","rss","workers"],"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/helloimalastair.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-13T08:58:53.000Z","updated_at":"2024-08-16T04:45:32.000Z","dependencies_parsed_at":"2024-11-27T08:18:36.110Z","dependency_job_id":null,"html_url":"https://github.com/helloimalastair/thea","commit_stats":null,"previous_names":["helloimalastair/thea"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/helloimalastair%2Fthea","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/helloimalastair%2Fthea/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/helloimalastair%2Fthea/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/helloimalastair%2Fthea/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/helloimalastair","download_url":"https://codeload.github.com/helloimalastair/thea/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248289925,"owners_count":21078922,"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":["pocket","rss","workers"],"created_at":"2024-12-08T07:08:13.814Z","updated_at":"2025-04-10T20:21:55.500Z","avatar_url":"https://github.com/helloimalastair.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Thea\n*Save RSS Feeds to your Pocket account ✨automagically✨*\n\n## Setup\n1. Register a Pocket app [here](http://getpocket.com/developer/apps/new). Copy the `.dev.vars.example` file to `.dev.vars`, and paste your consumer key into the `POCKET_PLATFORM_CONSUMER_KEY` variable.\n2. Uncomment the lines marked `UNCOMMENT THIS LINE` in the [`src/index.ts`](src/index.ts) file.\n3. Run `pnpm install`(replace with package manager of choice), then run `pnpm dev`.\n4. Visit the URL the dev process provides(should look like `http://localhost:8787/`, port may vary). Follow the Auth Flow Presented. When presented with the Access Token, copy it.\n6. Re-add the comments to the lines you uncommented in step 2.\n7. Create a new KV Namespace([how-to](https://developers.cloudflare.com/workers/wrangler/commands/#create-3)), or use an existing one. Paste the Namespace ID into the [`wrangler.json`](wrangler.json).\n7. Configure the feeds you wish to follow in [`config.ts`](src/config.ts). You can also configure a prefix that Thea will use when writing to KV, to ensure it doesn't collide with other Workers/Pages Functions that use the same namespace.\n7. Create two Worker Secrets with `wrangler`([how-to](https://developers.cloudflare.com/workers/wrangler/commands/#put-3)), being\n\t* `POCKET_PLATFORM_CONSUMER_KEY` - Your Pocket Consumer Key\n\t* `POCKET_USER_AUTHORIZATION_TOKEN` - The Access Token you copied in step 4.\n8. Run `pnpm run deploy` to deploy the worker to Cloudflare. Updates can take a little while to start, but once they do, they should stay in-sync with the RSS Feed.\n\nBy default, Thea is set to update every 5 minutes. This can be adjusted in the `triggers.cron` section of the [`wrangler.json`](wrangler.json) file.\n\nAuthentication code inspired by [Pocket-SDK-TypeScript](https://github.com/mtreilly/pocket-sdk-typescript/) by [Michaél Reilly](https://github.com/mtreilly)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhelloimalastair%2Fthea","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fhelloimalastair%2Fthea","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fhelloimalastair%2Fthea/lists"}