rss2md
v1.0.7
Published
RSS to Markdown converter using Puppeteer
Maintainers
Readme
RSS to Markdown Converter 🥔
A script that converts RSS feeds to markdown files. Like a potato peeler, but for web content!
Features
- 📰 Reads RSS feeds
- 🔄 Tracks processed URLs (so you don't process the same potato twice)
- 📝 Converts articles to markdown
- 📅 Saves metadata (title, link, publication date)
- ⏭️ Skips existing files (no duplicate potatoes in your basket)
- 💾 Saves list of processed URLs to JSON file
Quick Start
You can run the tool directly using npx without installation:
# With default parameters (like a plain baked potato)
npx rss2md
# With custom output directory (like storing potatoes in a different basket)
npx rss2md -o ./potato
# With custom processed URLs file (like a special potato tracking list)
npx rss2md -p potatoes-processed.json
# With custom RSS feed (like getting potatoes from a different farm)
npx rss2md -r "https://example.com/feed.xml"
# With all parameters specified (like a fully loaded potato with all the toppings)
npx rss2md -r "https://example.com/feed.xml" -o "./articles" -p "processed.json" -t 7000 -w 3000Installation (Optional)
If you want to install it globally:
npm install -g rss2mdThen you can run it simply as:
rss2mdConfiguration
Create a .env file with the following variables:
RSS_URL=https://rss.app/feeds/tLshmCgUHAELkyBR.xml
OUTPUT_DIR=./outputOptional Parameters
-r, --rss-url- RSS feed URL (default: from .env orhttps://rss.app/feeds/tsgLFEhPmMEsHjE0.xml)-o, --output-dir- output directory for markdown files (default: from .env or./output)-p, --processed-file- file to store list of processed URLs (default:processed_urls.json)-t, --timeout- navigation timeout in milliseconds (default:7000)-w, --wait-time- wait time after page load in milliseconds (default:3000)
Dependencies
rss-parser- for parsing RSS feedspuppeteer- for web scrapingturndown- for HTML to Markdown conversionyargs- for command line argument parsingdotenv- for environment variable management
Why Potatoes? 🥔
Because like potatoes, this script:
- Is versatile (works with any RSS feed)
- Is reliable (won't let you down)
- Keeps things organized (like a well-stocked potato cellar)
- Gets the job done (just like a good potato peeler)
License
ISC - Because sharing is caring, just like sharing a bag of potatoes with your neighbor!
