{"id":19288008,"url":"https://github.com/ntrotner/matrix-rss","last_synced_at":"2025-06-11T22:32:15.752Z","repository":{"id":48995361,"uuid":"330793181","full_name":"ntrotner/matrix-rss","owner":"ntrotner","description":"Matrix Bot to Fetch RSS and Send it to a Room","archived":false,"fork":false,"pushed_at":"2021-07-01T15:33:32.000Z","size":35,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-06-11T19:59:20.297Z","etag":null,"topics":["feed","matrix","rss"],"latest_commit_sha":null,"homepage":"","language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/ntrotner.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null}},"created_at":"2021-01-18T21:39:29.000Z","updated_at":"2022-10-29T08:04:48.000Z","dependencies_parsed_at":"2022-09-07T04:12:49.831Z","dependency_job_id":null,"html_url":"https://github.com/ntrotner/matrix-rss","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/ntrotner/matrix-rss","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ntrotner%2Fmatrix-rss","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ntrotner%2Fmatrix-rss/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ntrotner%2Fmatrix-rss/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ntrotner%2Fmatrix-rss/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/ntrotner","download_url":"https://codeload.github.com/ntrotner/matrix-rss/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/ntrotner%2Fmatrix-rss/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259354762,"owners_count":22844924,"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":["feed","matrix","rss"],"created_at":"2024-11-09T22:07:48.486Z","updated_at":"2025-06-11T22:32:15.717Z","avatar_url":"https://github.com/ntrotner.png","language":"TypeScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# RSS Bot\nThis bot allows one to get RSS feed messages through the Matrix messenger protocol.\n\n## Requirements\n- `npm`\n- `npx`\n- `node`\n\n## How to Run\n- Matrix\n  - Create user account on a server and add user and password to the `settings.json`\n  - Create or join a room with that account\n- settings.json\n  - Set the sync interval to rerun every x hours\n  - Add a server and room url\n  - In the \"emitter\" array one can add as many RSS emitter as desired \n    (There are some predefined ones, but they are just for reference)\n- Run\n  - Default: `cd rss-fetch \u0026\u0026 npm install \u0026\u0026 npm start`\n  - ~~Build and run with docker: `docker build -t rssbot .` `docker run -d -v /path/to/Matrix-RSS-Feed/:/matrix rssbot`~~\n\n\n### Optional\n- One can also emit different RSS feeds to other rooms by adding an object to \"rssRooms\"\n- Customize the messages you receive by editing the `message-template.html`, as see in the \"Template\" section.\n\n### Note\nOn the first time every fetched RSS feed will be sent to you.\nThe next ones will only include new ones.\n\n## Template\nAvailable RSS attributes that are used as id in the template:\n- \"title\"\n- \"categories\"\n- \"content\n- \"contentSnippet\n- \"creator\"\n- \"enclosure\"\n- \"guid\"\n- \"isoDate\"\n- \"link\"\n- \"pubDate\"\n\n### Example\nThe first two will be filled with title and creator (if exists in the RSS). \nThe third one won't be filled, as the class isn't mentioned.\n```html\n\u003ch2 class=\"parser\" id=\"title\"\u003e\u003c/h2\u003e\n\u003cp class=\"parser\" id=\"creator\"\u003e\u003c/p\u003e\n\u003ch3 id=\"link\"\u003eText\u003ch3\u003e\n```\n\n## TODO\n- Docker support\n- ~~Make it possible to use rooms with encryption (as it is a core feature of Matrix)~~ (somehow working)\n- ~~Find a way to close the connection of the client after every message is sent~~ (connection is reused)\n- Fix encoding issue of rss-parser\n- ~~Integrate timestamp anchor to local storage~~ (working)\n- ~~General testing for cross server usage~~ (working)","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fntrotner%2Fmatrix-rss","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fntrotner%2Fmatrix-rss","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fntrotner%2Fmatrix-rss/lists"}