{"id":13753958,"url":"https://github.com/relekang/graphql-rss-parser","last_synced_at":"2025-07-30T13:07:32.128Z","repository":{"id":42505454,"uuid":"89670162","full_name":"relekang/graphql-rss-parser","owner":"relekang","description":"A microservice that parses rss feeds and makes it available as grahpql service.","archived":false,"fork":false,"pushed_at":"2023-04-14T10:55:06.000Z","size":2839,"stargazers_count":72,"open_issues_count":4,"forks_count":7,"subscribers_count":3,"default_branch":"main","last_synced_at":"2024-11-21T09:21:01.661Z","etag":null,"topics":["graphql","graphql-server","jsonfeed","jsonfeed-reader","micro","microservice","rss","rss-parser"],"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/relekang.png","metadata":{"files":{"readme":"readme.md","changelog":"changelog.md","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}},"created_at":"2017-04-28T05:19:53.000Z","updated_at":"2023-06-19T08:05:44.000Z","dependencies_parsed_at":"2024-01-17T15:02:55.714Z","dependency_job_id":null,"html_url":"https://github.com/relekang/graphql-rss-parser","commit_stats":null,"previous_names":["relekang/micro-rss-parser"],"tags_count":58,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/relekang%2Fgraphql-rss-parser","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/relekang%2Fgraphql-rss-parser/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/relekang%2Fgraphql-rss-parser/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/relekang%2Fgraphql-rss-parser/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/relekang","download_url":"https://codeload.github.com/relekang/graphql-rss-parser/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":238536152,"owners_count":19488667,"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":["graphql","graphql-server","jsonfeed","jsonfeed-reader","micro","microservice","rss","rss-parser"],"created_at":"2024-08-03T09:01:35.723Z","updated_at":"2025-07-30T13:07:32.114Z","avatar_url":"https://github.com/relekang.png","language":"TypeScript","funding_links":[],"categories":["micro","TypeScript"],"sub_categories":[],"readme":"\u003ch1 style=\"text-align: center;\"\u003e\ngraphql-rss-parser\n\u003ca href=\"https://www.npmjs.com/package/graphql-rss-parser\"\u003e\u003cimg src=\"https://img.shields.io/npm/v/graphql-rss-parser.svg\" alt=\"npm version\"\u003e\u003c/a\u003e\n\u003c/h1\u003e\n\nA [graphql][] microservice that parses rss feeds and returns a JSON representation of the\ngiven feed. It uses different parses installed from npm. When a parser fail it will try the next following this order: [feedparser][], [rss-parser][], [feedme][], [rss-to-json][]. To specify a specific parser see example queries below.\n\n## Installation\n\n```shell\nnpm i -g graphql-rss-parser\n```\n\n## Usage\n\n### CLI for starting the server\n\n```shell\n$ graphql-rss-parser --help\n\nOPTIONS:\n  --port, -p \u003cnumber\u003e    - Port to listen to [env: PORT] [optional]\n  --host, -H \u003cstr\u003e       - Host to listen to [env: HOST] [optional]\n  --sentry-dsn, -D \u003cstr\u003e - SENTRY DSN. This is used to configure logging with sentry.io [env: SENTRY_ENV] [optional]\n  --log-level, -L \u003cstr\u003e  - \"fatal\" | \"error\" | \"warn\" | \"info\" | \"debug\" | \"trace\" | \"silent\" [env: LOG_LEVEL] [optional]\n\nFLAGS:\n  --csrf-prevention, -C - Toggle for CSRF prevention [env: CSRF_PREVENTION]\n  --pretty-log, -P      - Log human readable instead of JSON [env: PRETTY_LOG]\n  --help, -h            - show help\n  --version, -v         - print the version\n```\n\n### Sentry integration\n\nThe sentry integration can be enabled by passing the `-D/--sentry-dsn` cli option. It is important to note\nthat errors that happens because errors in parsers or http requests will be filtered out. This is because\nthe goal of this error tracking is to catch errors in the code of the service.\n\n### Example queries\n\n#### feed(url: String, [parser: Parser])\n\n```graphql\n{\n  feed(url: \"https://rolflekang.com/feed.xml\") {\n    title\n    entries {\n      title\n      pubDate\n      link\n    }\n  }\n}\n```\n\n##### Specifying the parser\n\ngraphql-rss-parser supports several of the rss parsers on npm. It can be specified with the parser option in a feed query as seen below.\n\nAvailable parsers:\n\n* `FEEDPARSER` - [feedparser][]\n* `RSS_PARSER` - [rss-parser][]\n* `FEEDME` - [feedme][]\n* `RSS_TO_JSON` - [rss-to-json][]\n* `JSON_FEED_V1` - internal see `src/parsers/jsonfeed-v1.ts`\n\n```graphql\n{\n  feed(url: \"https://rolflekang.com/feed.xml\", parser: FEEDPARSER) {\n    entries {\n      link\n    }\n  }\n}\n```\n\n#### findFeed(url: String)\n\n```graphql\n{\n  findFeed(url: \"https://rolflekang.com\") {\n    link\n  }\n}\n```\n\n[graphql]: http://graphql.org/\n[feedparser]: https://www.npmjs.com/package/feedparser\n[rss-parser]: https://www.npmjs.com/package/rss-parser\n[feedme]: https://www.npmjs.com/package/feedme\n[rss-to-json]: https://www.npmjs.com/package/rss-to-json\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frelekang%2Fgraphql-rss-parser","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frelekang%2Fgraphql-rss-parser","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frelekang%2Fgraphql-rss-parser/lists"}