OP Integration Guide
What you get from integrating with OP
Last modified 2026-07-17
What is Octothorpe Protocol
Simple: OP is a social network layer you can add to any website.
Technical: OP is a system that creates relationship graphs between URIs that can be integrated into any networked interface.
Why use OP
OP lets you keep your own community, your own look, your own way of doing things, but it gives you powerful tools to build networks within your community or with outside communities, without an external platform. You can plug a powerful social API into your own system, connect to outside services, or make a social network entirely out of personal websites.
What you get with OP out of the box
Completely different domains and services can use hashtags as if they shared a platform. You can join the main server, run your own to keep it within friends, or federate your server to share tags with the whole network.
Any link to any page can be used as a @user-style mention. Links get subscribeable endpoints with advanced filters, allowing you scope feeds to who sent the link, who was linked to, and/or what tags were used.
User-managed groups ie Webrings
End-users can make and join webrings with a single link. Links must be bidirectional, so admins and members can self-manage their memership simply by removing their own link.
You can easily build your own RSS or JSON endpoints for updates across every url, hashtag, and web-ring in the system. Our API lets you build dynamic queries from combinations of hashtags, URL patterns, and group membership, with moderation features built in. Blogrolls, incoming mentions, hashtags, and more can be subscribed to via RSS or used as a data source.
Custom link types
Does your system have bookmarks, citations, likes, or other meaningful kinds of links? Would you like to? OP makes it easy to add or track custom relationships on any system.
OP ships with drop-in web components for hashtag lists, mentions, and a webring navigator. Here's a embedded hashtag list!
We have wilder stuff, like custom feeds embedded in images.
Ethos
- FOSS - OP is an open protocol with very few dependencies. You can host an entire system yourself, or hack together a new one.
- Everything is consent-based -- Standard OP servers are not scrapers or search engines. They are relays that store almost no data from their members, and only store what the members actively send them. They have strict rate limits for how often they hit a url, making OP no more of a burden than a few extra human browsers. See the ethos we ship our relays under.
- None of this uses an LLM -- OP is just javascript. A human wrote this guide.
How do I add OP to my project
All the major features of OP can be added to a webpage with one or two lines of HTML or simple webcomponents. See our quickstart or take a deeper dive into how it works. If you are interested in adding support for OP to your project, please contact us at admin@octothorp.es or Mastodon or Bluesky or open an issue on Github.
What's coming in v0.7
- Open social itegration -- we've tested new endpoints that can export anything in the system to formats that can be posted directly to open networks, like ATProto (Bluesky, etc.) or ActivityPub (Mastodon, etc.). Here's a preview demo. (16mins)
- Output anything, actually -- the Publisher system that runs social integration can be extended to convert query results into anything structured format ("give me every blog post tagged hummingbirds as a ICS feed.")
- Non-HTTP sources -- use OP locally or in a closed network to ingest any document type you can concretely define.
- OP Apps -- OP core features are now contained in a node module, and you can create your own system with custom rules about scraping consent, frequency, and content.