A tool that converts your Instapaper bookmarks into an RSS/Atom feed, allowing you to access your Instapaper articles in any RSS reader.
Disclaimer: This project is not affiliated with, endorsed by, or in any way officially connected to Instapaper or Cloudflare.
- OAuth authentication with Instapaper
- Incremental updates (only fetches new bookmarks)
- Persistent storage using BoltDB
- Full article content in feed entries
- Standard Atom feed format
The tool runs as a GitHub Action on a schedule (every 24 hours), fetching new bookmarks from your Instapaper account and generating an Atom feed. The feed and state are stored in Cloudflare R2 storage.
graph TD
R[RSS Reader] --> R2
R2[(Cloudflare R2)] <--> DB[instapaper.db]
F --> R2
A[App] --> I[Instapaper API]
A <--> DB
A --> F[atom.xml]
The project consists of several packages:
app: core application logicpkg/instapaper: Instapaper API clientpkg/bolt: a wrapper around BoltDB for storing statepkg/atom: Atom feed generationpkg/structs: shared data structure — Bookmark
-
Create an Instapaper API application to get your consumer key and secret
-
Set up a Cloudflare R2 bucket
-
Configure GitHub repository secrets:
INSTAPAPER_CONSUMER_KEYINSTAPAPER_CONSUMER_SECRETINSTAPAPER_TOKENINSTAPAPER_TOKEN_SECRETR2_ACCOUNT_IDR2_ACCESS_KEY_IDR2_ACCESS_KEY_SECRET
To run locally and get your Instapaper tokens:
go run ./... -username your_username -password your_passwordThis will output your token and token secret which you can then use in the GitHub Actions secrets.
Contributions are welcome! Please feel free to submit a Pull Request.
MIT License