Stock base for RoamJS Roam Research extensions. Fork this repo to start a new extension.
- roamjs-components — shared utilities, DOM helpers, queries, writes, and UI components
- Samepage build —
samepage buildproduces the Roam Depot–ready bundle - Settings panel — example
extensionAPI.settings.panel.createwith an Enable switch - TypeScript — tsconfig extending
@samepage/scripts - CI — GitHub Actions to build on push/PR (uses RoamJS secrets for publish)
-
Rename the repo and update
package.json:name: your extension slug (e.g.my-extension)description: one line describing the extension
-
Implement in
src/index.ts:- Keep or replace the settings panel
- Add your logic using
roamjs-components(e.g.createHTMLObserver,createBlock,renderToast) - Return
{ unload }to clean up on unload
-
Optional: Add React components under
src/components/(see autocomplete, giphy for examples). -
Secrets (for publish) — in the forked repo, configure:
ROAMJS_RELEASE_TOKEN,AWS_ACCESS_KEY_ID,AWS_SECRET_ACCESS_KEYAWS_REGION,ROAMJS_PROXY(vars)
npm start— samepage dev (local development)npm run build:roam— build for Roam (dry run; CI runsnpx samepage build)
MIT