{"id":13412475,"url":"https://github.com/Kombustor/rss-fulltext-proxy","last_synced_at":"2025-03-14T18:31:33.544Z","repository":{"id":52507174,"uuid":"197318555","full_name":"Kombustor/rss-fulltext-proxy","owner":"Kombustor","description":"Get full-text content for any RSS-feed.","archived":false,"fork":false,"pushed_at":"2024-09-18T10:23:26.000Z","size":736,"stargazers_count":108,"open_issues_count":21,"forks_count":9,"subscribers_count":4,"default_branch":"master","last_synced_at":"2024-09-18T13:54:03.508Z","etag":null,"topics":["fulltext","rss","tinytinyrss"],"latest_commit_sha":null,"homepage":null,"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/Kombustor.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":"2019-07-17T05:03:39.000Z","updated_at":"2024-03-09T13:16:45.000Z","dependencies_parsed_at":"2024-04-15T21:32:56.437Z","dependency_job_id":"92a491e8-0a08-49c8-bfe2-1f2b7cfb42cb","html_url":"https://github.com/Kombustor/rss-fulltext-proxy","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/Kombustor%2Frss-fulltext-proxy","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kombustor%2Frss-fulltext-proxy/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kombustor%2Frss-fulltext-proxy/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Kombustor%2Frss-fulltext-proxy/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Kombustor","download_url":"https://codeload.github.com/Kombustor/rss-fulltext-proxy/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243625138,"owners_count":20321239,"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":["fulltext","rss","tinytinyrss"],"created_at":"2024-07-30T20:01:25.086Z","updated_at":"2025-03-14T18:31:33.253Z","avatar_url":"https://github.com/Kombustor.png","language":"TypeScript","funding_links":[],"categories":["TypeScript","Software","Feed Readers"],"sub_categories":["Feed Readers","E-commerce"],"readme":"![CircleCI](https://img.shields.io/circleci/build/github/Kombustor/rss-fulltext-proxy.svg)\n![License](https://img.shields.io/github/license/Kombustor/rss-fulltext-proxy.svg)\n![Docker Pulls](https://img.shields.io/docker/pulls/kombustor/rss-fulltext-proxy.svg)\n[![Greenkeeper badge](https://badges.greenkeeper.io/Kombustor/rss-fulltext-proxy.svg)](https://greenkeeper.io/)\n\n# RSS Fulltext Proxy 📃\n\nCan \"proxy\"/mirror any RSS Feed to fetch full-text Content.\nAllows integration into any feed reader, without plugins or further configuration required.\n\n## Deployment\n\n### Using Docker (recommended)\n\n1. Download and modify the docker-compose.yml file to your liking.\n2. Run `docker-compose up -d`\n\n### Manually\n\n1. Clone the repository: `git clone https://github.com/Kombustor/rss-fulltext-proxy.git`\n2. Change working path: `cd rss-fulltext-proxy`\n3. Install dependencies: `npm install`\n4. Compile: `npm run build`\n5. Run: `node dist/server.js`\n\n\u003e Note: You have to set the environment variables described in [Configuration](#Configuration) yourself, and you have to start a local redis server.\n\n## Configuration\n\nThe application is easily configurable with environment variables.\n\n| Name                 | Type   | Default           | Description                                        |\n|----------------------|--------|-------------------|----------------------------------------------------|\n| PORT                 | number | 3000              | The port the webserver listens on.                 |\n| REDIS_URL            | string | redis://127.0.0.1 | The redis connection URL for caching.              |\n| CACHE_EXPIRY_SECONDS | number | 900               | The number of seconds for cache entries to expire. |\n\n## Usage\n\nWe have to define two query parameters:\n\n| Identifier | Description                            |\n|------------|----------------------------------------|\n| feed       | The original feed URL to proxy.        |\n| selectors  | URL-encoded string[] of CSS-selectors. |\n\n#### Example:\n\n- Feed URL: `http://rss.sueddeutsche.de/rss/Topthemen`\n- Query Selectors of relevant HTML elements: `[\"figure.asset-image\", \"section.body \u003e p, section.body \u003e h3\"]`\n- URL-encoded selectors using [this](https://www.urlencoder.org/) website: `%5B%22figure.asset-image%22%2C%20%22section.body%20%3E%20p%2C%20section.body%20%3E%20h3%22%5D`\n- The URL we are adding to our feed reader is: `http://host:post/?feed=http://rss.sueddeutsche.de/rss/Topthemen\u0026selectors=%5B%22figure.asset-image%22%2C%20%22section.body%20%3E%20p%2C%20section.body%20%3E%20h3%22%5D`\n- We are getting full-text RSS content for this feed. 🔥\n\nA collection of selectors can be found on the [wiki page](https://github.com/Kombustor/rss-fulltext-proxy/wiki/Selectors-Collection).\nIf you create or improve a selector, feel free to open a pull request to add it to the wiki page.\n\n## Contributing\nPull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.\n\n### TODO\n\n- Make redis optional.\n- Add common templates for easier usage.\n- Unit tests.\n- Linting.\n- Add option to clear cache.\n- Tutorial on how to choose selectors.\n- Webinterface to visually select elements that should be included/removed.\n- Support websites which don't provide a RSS feed.\n\n## License\n\n[MIT](https://choosealicense.com/licenses/mit/)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FKombustor%2Frss-fulltext-proxy","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FKombustor%2Frss-fulltext-proxy","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FKombustor%2Frss-fulltext-proxy/lists"}