/irodr

RSS reader client like LDR for Inoreader.

Primary LanguageTypeScriptMIT LicenseMIT

Irodr Build Status Netlify Status

RSS reader client for Inoreader.

This RSS reader provide a similar experience to LDR.

Screen Shot

Purpose

  • Fast read RSS like LDR
    • Prefetch contents
    • Mark as "read" on idle time
  • Keyboard Shortcut
  • Customizable by UserScript

Usage

login gif

  1. Open https://irodr.netlify.com/
  2. Click Connect to Inoreader
  3. Click Authorize on Inoreader site

Keyboard Shortcut

  • j: move-next-content-item
  • shift+j: load-more-past-contents
  • t: toggle-content-filter
  • k: move-prev-content-item
  • a: move-prev-subscription-feed
  • s: move-next-subscription-feed
  • m: make-subscription-read
  • v: open-current-content-url
  • z: toggle-subscription-feed-list
  • space: scroll-down-content
  • shift+space: scroll-up-content
  • shift+s: skip-and-move-next-subscription-feed

Custom Client Id and Client Secret

If you want to your Client ID/Secret of inoreader, do following steps:

  1. Visit https://www.inoreader.com/
  2. Open "Preferences"
  3. Open "Developer" tab
  4. Create new App
    • "Redirect URL" is not required
    • "Scoped": Read and Write
  5. Copy Client Id and Client Secret

Create new App

You paste the Client ID and secret to Irodr Authorization.

Irodr Authorization

UserScript API

Irodr provide some UserScript API for UserScript like Greasemonkey.

  • window.addEventListener("userscript-init", (event) => { /* Initialize UseScript object */ })
  • window.userScript.getActiveContent(): UserScriptActiveContent | undefined
  • window.userScript.getActiveSubscription(): UserScriptActiveSubscription | undefined
  • window.userScript.triggerKey(keys: string, action?: string): void

For more details, see UserScript API document. See also resources/userScript directory.

📝 Notes

Development

Usage

Run following command and open local server.

npm start
# open http://localhost:13245/

📝 CORS workaround

Production

http://irodr.netlify.com/ work on Netlify. Netlify support CORS proxy

Local server

This project use the server that avoid CORS for Inoreader.

npm start

📝 Limitation of Mixed-content

A browser show a warning on https://irodr.netlify.com/ It is caused by Mixed content.

Perf

Run pwmetrics.

npm run pwmerics

Changelog

See Releases page.

Running tests

Install devDependencies and Run npm test:

npm i -d && npm test

Code of Conduct

Please note that this project is released with a Contributor Code of Conduct. By participating in this project you agree to abide by its terms.

Contributing

Pull requests and stars are always welcome.

For bugs and feature requests, please create an issue.

  1. Fork it!
  2. Create your feature branch: git checkout -b my-new-feature
  3. Commit your changes: git commit -am 'Add some feature'
  4. Push to the branch: git push origin my-new-feature
  5. Submit a pull request :D

Author

License

MIT © azu

OSS Supports