Files
captoys/diigo-week/README.md
T
dckc 94a059af25 diigo-week: draft a potluck issue from a week of diigo bookmarks
An EmDash plugin (native, content:write only) with one admin page:
a diigo username and an ISO week. It reads diigo-cache's public page
(?in=<week>&by=created) as microformats, follows rel=next, and
creates a draft in issues shaped like seed/issues.json.

Transport is a DIIGO_CACHE service binding rather than ctx.http.fetch:
EmDash's SSRF guard refuses localhost, and the binding names one
worker. Logic lives in src/week.ts with the fetcher passed in; tests
read fixtures in diigo-cache's markup. The checklist's goal 2 now
names potluck; DiigoBridge waits.

Generated-by: Claude Opus 5.5
2026-10-09 02:12:41 -05:00

1.2 KiB

diigo-week

An EmDash plugin that drafts a potluck issue from a week of your shared diigo bookmarks. It reads them as microformats from diigo-cache's public page, so you edit a draft instead of copy-pasting links.

Getting started

Run diigo-cache (with a filled public cache) and potluck, each in its own terminal:

pnpm install
(cd ../diigo-cache && pnpm dev)   # → http://localhost:8787/
(cd ../potluck && pnpm dev)       # → http://localhost:4321/_emdash/admin

In potluck's admin: Plugins → Draft from diigo → Draft issue. The draft shows up under Issues.

How it reads the week

It asks diigo-cache for /public/<user>?in=<week>&by=created over the DIIGO_CACHE service binding (potluck's wrangler.jsonc), reads the page's h-feed of h-entry bookmarks, follows rel=next, and creates a draft in issues: title, week, dek, and a paragraph per bookmark with its description and tag links, as in potluck's seed/issues.json. The binding is its only reach outside the site; it declares content:write and taxonomies:write (the issue gets its bookmarks' tags, as the sample issues do), nothing else.

Checks: pnpm lint && pnpm test.