Dear Discourse Community, here’s my little
Christmas present
to you all. It’s simple but useful, and was built purely because I wanted it.
Inspired by Simon Willison’s great blog about using LLMs for development, I vibe-coded this over Christmas, in between social events, watching movies, and wrapping presents! I wrote none of the code, but I have reviewed code and supervised the LLM. Everything was driven from spec.md and roadmap.md.
What is it for?
I use a self-hosted, personal Discourse as a Notebook, Journal, Blog, CV, Wiki, AI tool and developer knowledgebase. Frequently I find myself wanting to ‘clip’ content from the web and drop it directly into my Discourse, from where I can incorporate it in a Note or a Journal entry.
Clip To Discourse now supports four clipping styles: Page Title + URL, Title + URL + Excerpt, Full Page Text, and selected text.
Privacy
- The developer does not collect data from your use of the extension.
- Clipped content and credentials are sent directly from your browser to the Discourse instance you configure.
- No Clip To Discourse intermediary service is involved.
- Profiles and credentials are stored locally in Chrome’s extension storage on your device.
- Open source. GitHub repo: GitHub - koloki-co/clip-to-discourse-chromium-extension: A Chromium Browser extension which clips web content to your private Discourse. · GitHub
Features
- Clip a page as Title + URL, Title + URL + Excerpt, Full Page Text, or Text Selection.
- Create new Topics with each clip, or append clips as replies to an existing Topic.
- Authorize through the Discourse User API without needing an administrator to create an API key. An administrator-provided, user-scoped API key remains available as a fallback.
- Supports multiple profiles for different Discourse instances, users, credentials, templates, and defaults. Profiles can be renamed, duplicated, or deleted.
- Choose a destination category from the categories available to the connected account.
- Customize title and body templates using page metadata, excerpts, full text, selected text, and date placeholders.
- Choose System, Light, or Dark appearance.
- Optionally change the Clip To Discourse toolbar icon to the selected profile’s site favicon, so you can easily tell where you’re clipping to.
- Open the popup using
Ctrl+Shift+K(Command+Shift+Kon macOS), configurable atchrome://extensions/shortcuts.
Limitations
- The Discourse site must enable User API keys and permit your account’s group to authorize them. If User API authorization is unavailable, a site administrator can provide a single-user API key with granular permissions.
- Clearly if Clip To Discourse capability was enabled for too many users, it could produce a lot of low-quality posting on a shared or public Discourse instance. So I primarily aim this Extension towards those of you who are, like me, using Discourse as a personal notebook.
How To Install
- Install in Chrome or another compatible Chromium-based browser, version 127 or later, via the Chrome Web Store: https://chromewebstore.google.com/detail/clip-to-discourse/copdhiejkkdblhdcdjapcoalldkondhi
- Optionally ‘Pin’ the extension to the browser’s toolbar.
- Click the extension icon, open Settings, and enter your Discourse Base URL.
- Select User API and click Authorize Clip To Discourse. Sign in to your Discourse account, enter the displayed device code if requested, and approve access.
- If User API authorization is unavailable, use the Admin API Key tab with an administrator-provided, single-user API key. Avoid global API keys.
- Choose your default clip style, destination, category or existing Topic ID, and optionally customize the templates.
- Save settings and optionally test the connection.
- Close Settings and clip stuff to test!
Authorising Clip To Discourse
Clipping to Discourse
Roadmap
- I’m not planning on a Firefox or Safari extension (as I don’t use those browsers), but would be happy for someone to take on the task of porting this extension. We could collaborate to keep it all in one repo and maintain feature parity.
- Possible future additions include tags, additional keyboard shortcuts, and further clipping workflow refinements.
Related discussions
Request for basically this tool: Chrome/Firefox extension “Share to discourse” - #28 by supermathie
A related post, suggesting additional features when clipping a Discourse: Need Web Clipper for Discourse Post
Social Share is a related concept, but uses simple URLs: Social Share
Feedback, Ideas, and Contributing
This topic is a pretty good place to put any feedback you have. I am open to ideas for improvements as long as they don’t overcomplicate the extension and/or make it less useful for me!
If you want to open issues or make PRs, the GitHub repo is here:
This extension is a free, open-source, and privacy-first tool, created for the Discourse community by my company Koloki.co






