{"id":22845963,"url":"https://github.com/conoro/flat-rss-example","last_synced_at":"2026-03-19T23:48:48.479Z","repository":{"id":47899085,"uuid":"384094652","full_name":"conoro/flat-rss-example","owner":"conoro","description":"Generate usable RSS feeds from web-pages using GitHub OCTO Flat Data","archived":false,"fork":false,"pushed_at":"2022-01-19T04:33:18.000Z","size":21818,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":3,"default_branch":"main","last_synced_at":"2025-02-06T09:48:27.781Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"HTML","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/conoro.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}},"created_at":"2021-07-08T11:00:59.000Z","updated_at":"2024-03-12T00:01:18.000Z","dependencies_parsed_at":"2022-08-12T14:00:46.083Z","dependency_job_id":null,"html_url":"https://github.com/conoro/flat-rss-example","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/conoro%2Fflat-rss-example","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/conoro%2Fflat-rss-example/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/conoro%2Fflat-rss-example/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/conoro%2Fflat-rss-example/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/conoro","download_url":"https://codeload.github.com/conoro/flat-rss-example/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":246423488,"owners_count":20774792,"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-12-13T03:19:37.946Z","updated_at":"2026-01-11T02:42:40.483Z","avatar_url":"https://github.com/conoro.png","language":"HTML","funding_links":[],"categories":[],"sub_categories":[],"readme":"# flat-rss-example\nGenerate usable RSS feeds from web-pages using GitHub OCTO Flat Data\n\nThis is really just an example and is based on my other RSS feed generators which run on AWS Lambda.\n\nTo use for a different page, just set the URL in flat.yaml and then write your own scraping code in postprocess.ts. Luckily Deno is close enough to Node.js that Cheerio works almost out of the box.\n\nMost news-style pages are generally easy to scrape. You're just looking for a repeated div to base your grabbing of each article's title/url/image/summary\n\nIn this example, the latest copy of the source HTML is saved to the repo (not necessary) as tokyo-marathon.html and then the generated RSS is saved to the repo as tokyo-marathon.xml. But to be accessible to Feed readers like [Feedly](https://feedly.com) you need to serve up the output as content-type application/xml. I do this by using [jsDelivr](https://www.jsdelivr.com/)\n\nSo the RSS feed for the [Tokyo Marathon news page](https://www.marathon.tokyo/en/news/) can be found at https://cdn.jsdelivr.net/gh/conoro/flat-rss-example/tokyo-marathon.xml\n\n\n# TO-DO\n* Let one repo do the scraping for many sites.\n* Persist data over time for historical purposes\n* Error handling\n* More examples based on previous scrapers I've done like South China Morning Post\n\nCopyright Conor O'Neill, 2021 (conor@conoroneill.com)\n\nLicense Apache 2.0\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fconoro%2Fflat-rss-example","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fconoro%2Fflat-rss-example","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fconoro%2Fflat-rss-example/lists"}