{"id":16266589,"url":"https://github.com/chambln/pandoc-rss","last_synced_at":"2025-04-08T14:52:43.135Z","repository":{"id":46705048,"uuid":"207047899","full_name":"chambln/pandoc-rss","owner":"chambln","description":"Generate an RSS feed from markup content and metadata","archived":false,"fork":false,"pushed_at":"2024-02-19T03:40:59.000Z","size":117,"stargazers_count":32,"open_issues_count":1,"forks_count":4,"subscribers_count":2,"default_branch":"master","last_synced_at":"2025-02-14T11:26:50.780Z","etag":null,"topics":["pandoc","rss","rss-feed","rss-feed-generator"],"latest_commit_sha":null,"homepage":"","language":"Roff","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/chambln.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-09-08T01:52:26.000Z","updated_at":"2025-01-25T15:31:54.000Z","dependencies_parsed_at":"2024-12-22T04:21:54.161Z","dependency_job_id":"8fea3999-949b-4b91-91da-727296cc6e4e","html_url":"https://github.com/chambln/pandoc-rss","commit_stats":{"total_commits":184,"total_committers":3,"mean_commits":"61.333333333333336","dds":"0.19565217391304346","last_synced_commit":"80413e8a6719d13ebcc69a77a1590ef54b10d353"},"previous_names":[],"tags_count":2,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chambln%2Fpandoc-rss","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chambln%2Fpandoc-rss/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chambln%2Fpandoc-rss/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/chambln%2Fpandoc-rss/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/chambln","download_url":"https://codeload.github.com/chambln/pandoc-rss/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247866128,"owners_count":21009239,"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":["pandoc","rss","rss-feed","rss-feed-generator"],"created_at":"2024-10-10T17:42:31.890Z","updated_at":"2025-04-08T14:52:43.114Z","avatar_url":"https://github.com/chambln.png","language":"Roff","funding_links":[],"categories":[],"sub_categories":[],"readme":"# pandoc-rss\n\npandoc-rss is a command-line utility for generating partial or\ncomplete RSS feeds from the content and metadata of markup files.\nAny markup format which can be read by Pandoc will do.\n\nIt is implemented as a shell script using only the shell command\nlanguage sh(1) and other utilities specified by POSIX with the sole\nexception that GNU date(1) is used to transform date metadata to\nconform with [RSS Best Practices section\n3.2](https://www.rssboard.org/rss-profile#data-types-datetime).  Any\nother non-POSIX code would be considered a bug.  If you're certain\nyour markup files conform to the standard date format then you can\neasily patch the script and drop this dependency.\n\nThere is no official affiliation between pandoc-rss and Pandoc.\n\n## Installation\n\n### Arch Linux\n\npandoc-rss is [available from the\nAUR](https://aur.archlinux.org/packages/pandoc-rss).\n\n### Manual\n\nSystem-wide installation as root:\n\n    make install\n\nInstall for your user only:\n\n    make PREFIX=~/.local install\n\n## Usage\n\nPartial feed of item fragments:\n\n\u003e **pandoc‑rss** [**‑hop**] [**‑f** *format*|auto|omit]\n\u003e [**‑l** *link*] *input‑file*...\n\nComplete valid XML feed:\n\n\u003e **pandoc‑rss** **‑s** [‑**hop**] [**‑f** *format*|auto|omit]\n\u003e [**‑l** *link*] [**‑t** *title*] [**‑d** *description*]\n\u003e [**‑n** *language*]\n\u003e [**‑w** \"*webmaster@example.net* (*Real Name*)\" ]\n\u003e [**‑c** *copyright*] *input‑file*... **\u003e** *feed.xml*\n\nwhere each *input-file* corresponds to a feed item.  Items in the\nresulting XML appear in the order they were given on the command-line.\n\nSee pandoc-rss(1) for more detailed information—you can run `man\nshare/man/man1/pandoc-rss.1` to read this without installing it.\n\n### Example\n\nFor example I could render two blog articles `foo.md` and `bar.md`\nalong with the corresponding `rss.xml` feed using something like the\nfollowing:\n\n    $ pandoc --template=page -o foo.html foo.md\n    $ pandoc --template=page -o bar.html bar.md\n    $ pandoc-rss foo.md bar.md \u003e rss.xml \\\n        -t cosine.blue \\\n        -d 'Blog by Gregory Chamberlain' \\\n        -l https://cosine.blue \\\n        -c 'GPLv3+ or CC BY-SA 4.0' \\\n        -w 'greg@cosine.blue (Gregory Chamberlain)' \\\n        -n en-GB\n\n## Bugs and notes\n\n  - RSS enclosures are not supported.  Nobody uses them anyway.\n  - Any relative links in the body of an input-file will become\n    relative links in the feed and therefore render the feed invalid.\n\n## To-do\n\n  - [x] Add options for specifying channel title, link and description\n  - [x] Add Makefile rule to install the man page\n  - [x] Cite pandoc-rss as the generator element\n  - [x] Produce a standalone feed if and only if at least the channel\n    title, description and link are provided.\n  - [x] Add option to specify the channel language\n  - [x] Infer the guid/permalink format based on the channel link; for\n    example if the channel link is `http://example.net` then the\n    format is `http://example.net/%s.html`.\n  - [x] Finish writing the man page\n  - [ ] With input-file \"-\" read file names line-by-line from stdin\n  - [ ] With no input-file, print the usage message\n  - [ ] Instead of using a CDATA block, encode special characters in\n    the body text as HTML entities.\n\t\n    I think this is not possible using the current template because\n    Pandoc simply replaces `$body$` with the rendered HTML; I’m not\n    sure how we could intercept that process to escape all `[\u0026\u003c\u003e]`\n    characters as required.\n  - [ ] Print warnings about relative links in the description element\n    (this is non-trivial). Or better, use the channel link as a base\n    for relative links. Perhaps only do this with an explicit option,\n    otherwise this could lead to confusion and spurious links.\n  - [ ] Support for input files in a directory tree.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchambln%2Fpandoc-rss","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fchambln%2Fpandoc-rss","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fchambln%2Fpandoc-rss/lists"}