{"id":24795287,"url":"https://github.com/gabsedits/feeder","last_synced_at":"2025-03-24T19:17:19.671Z","repository":{"id":273347059,"uuid":"918154295","full_name":"GabsEdits/feeder","owner":"GabsEdits","description":"A simple RSS/Atom Reader Webapp \u0026 API","archived":false,"fork":false,"pushed_at":"2025-01-20T10:53:06.000Z","size":19,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-01-29T23:33:15.724Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"https://feeder.gxbs.dev","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/GabsEdits.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE.txt","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":"2025-01-17T11:00:57.000Z","updated_at":"2025-01-21T14:30:24.000Z","dependencies_parsed_at":"2025-01-20T11:28:27.944Z","dependency_job_id":"fff341df-4646-4885-aae1-1a4103ddce1b","html_url":"https://github.com/GabsEdits/feeder","commit_stats":null,"previous_names":["gabsedits/feeder"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GabsEdits%2Ffeeder","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GabsEdits%2Ffeeder/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GabsEdits%2Ffeeder/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/GabsEdits%2Ffeeder/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/GabsEdits","download_url":"https://codeload.github.com/GabsEdits/feeder/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":245334909,"owners_count":20598389,"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":"2025-01-29T23:30:27.293Z","updated_at":"2025-03-24T19:17:19.625Z","avatar_url":"https://github.com/GabsEdits.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"\u003cdiv align=\"center\"\u003e\n    \u003ch1\u003eFeeder\u003c/h1\u003e\n    \u003cp\u003eA simple web application (with an API) for reading RSS/Atom feeds.\u003c/p\u003e\n\u003c/div\u003e\n\n## API\n\nThe API is available at `/api/feed`.\n\n### How it works\n\nFirst, you will need to provide the URL of the feed you want to read. For\nexample, let's say you want to read Vanilla OS' Blog using their Atom feed,\nwhich is available at:\n\n```\nhttps://vanillaos.org/feed.xml\n```\n\nYou can access the feed by making a GET request to the API endpoint with the\n`url` query parameter set to the feed URL:\n\n```\n/api/feed?url=https://vanillaos.org/feed.xml\n```\n\nThe API will return the feed data in JSON format, which will make the feed into\nan easier-to-read format for your application. The JSON object will contain the\nfollowing properties:\n\n- `feedInfo`: Information about the feed itself, such as the `title` and `icon`.\n- `entries`: An array of entries in the feed, each containing the `title`,\n  `link`, `updated`, and `content`. Inside the `content` object, you will find\n  the content itself under \"\\_\" key. And the `type` key (which can be either\n  \"text\" or \"html\", that will tell you how to interpret the content) as well as\n  the `base` key (which will tell you the base URL of the content), will be\n  available under the `$` key.\n\nThis way, you can easily display the feed data in your application.\n\n### Example\n\nYou can try the API by making a GET request to the following URL:\n\n```\nhttps://feeder.gxbs.dev/api/feed?url=https://vanillaos.org/feed.xml\n```\n\nThis will return the feed data for Vanilla OS' Blog in JSON format.\n\n### Development\n\nTo run the API locally, you will need to have Deno installed on your machine,\nand the Git repository cloned.\n\nThe API is started automatically when you run the following command:\n\n```sh\ndeno task start\n```\n\nBoth the webapp and the API will be available at `http://localhost:8000`.\n\n## Webapp\n\nThe webapp is available at `/`. You can access it by visiting the root URL of\nthe application.\n\n### How it works\n\nThe webapp allows you to read feeds by providing the URL of the feed you want to\nread.\n\nAt first, you will see the welcome screen, where you will have to enter the URL\nof the first feed you want to read. You will also see a \"Use Sample Feed\"\nbutton, which will allow you to load a sample feed for testing purposes, which\nis the Vanilla OS' Blog feed.\n\nAfter you enter the feed URL and click the \"Next\" button, the webapp will load\nthe feed data, and will cache it in the browser's local storage. This way, you\ncan easily switch between feeds without having to reload the page.\n\nYou will next be redirected to the dashboard, where you will see the feed being\ndisplayed. You can click on the feed title to see the posts, and then click on\nwhichever post you want to read.\n\nThere is also a \"Add Feed\" button in the bottom of the first column, which will\nallow you to add another feed to the dashboard.\n\nClicking on the title, will refresh the feeds, insuring that you have the latest\ncontent.\n\n### Development\n\nThe development process is the same as for the API. You can run the webapp\nlocally by running the following command:\n\n```sh\ndeno task start\n```\n\nAnd to build the webapp, you can run the following command:\n\n```sh\ndeno task build\n```\n\nThe webapp will be available at `http://localhost:8000`.\n\n## License\n\nThis project is licensed under the MIT License. See the [LICENSE](LICENSE.txt) file\nfor more information.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgabsedits%2Ffeeder","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fgabsedits%2Ffeeder","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fgabsedits%2Ffeeder/lists"}