Skip to content

Instapaper connector #2

Description

@brendanlefebvre

Add an Instapaper connector so Instapaper users can serve their queue as an OPDS catalog.

Why

Second half of the README's "more connectors (Instapaper, Wallabag)" promise. Shipping Wallabag + Instapaper together makes multi-backend support the 1.0 headline rather than a promissory note.

Scope

  • Implement connectors/instapaper.py against connectors/base.py.
  • Instapaper's Full API uses OAuth 1.0a (xAuth) — consumer key/secret + username/password → access token. Handle signing.
  • Folders: Instapaper has Unread / Archive / Starred + user-defined folders. Map the built-ins at minimum.
  • Article HTML: Instapaper's bookmarks/get_text returns cleaned article HTML — use it for get_article_html.
  • Note: Full API access requires Instapaper subscription/approval; document this caveat.
  • Config: INSTAPAPER_CONSUMER_KEY/SECRET, INSTAPAPER_USERNAME/PASSWORD in .env.example + config.py.

Acceptance criteria

  • Instapaper queue browsable via OPDS; articles download as EPUB.
  • Pagination via the connector cursor contract.
  • Tests mirroring test_readwise.py (mocked HTTP).
  • README + .env.example updated, including the API-access caveat.

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions