<?xml version="1.0" encoding="UTF-8"?><rss xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:atom="http://www.w3.org/2005/Atom" version="2.0"><channel><title><![CDATA[Sockethub]]></title><description><![CDATA[Sockethub is a protocol gateway that lets browser apps talk to IRC, XMPP, email, Messenger, Instagram, feeds, link metadata, CalDAV calendars, and CardDAV contacts through one ActivityStreams 2.0 API.]]></description><link>https://sockethub.org</link><generator>metalsmith-feed</generator><lastBuildDate>Fri, 06 Nov 2026 16:00:59 GMT</lastBuildDate><atom:link href="https://sockethub.org/feed.xml" rel="self" type="application/rss+xml"/><author><![CDATA[Nick Jennings]]></author><item><title><![CDATA[Sockethub 5.0.0-beta.2 adds email, Messenger, and Instagram]]></title><description><![CDATA[<p>Sockethub
<a href="https://github.com/sockethub/sockethub/releases/tag/v5.0.0-beta.2">5.0.0-beta.2</a>
is out, and it brings three new platforms:</p>
<pre><code>npm install -g sockethub@next
</code></pre>
<p>The container image follows at <code>ghcr.io/sockethub/sockethub:next</code>.</p>
<h2 id="email">Email</h2>
<p><a href="https://github.com/sockethub/sockethub/tree/v5.0.0-beta.2/packages/platform-email"><code>@sockethub/platform-email</code></a>
receives mail over IMAP and sends it over SMTP. Your mail server stays the
message store: Sockethub keeps no mailbox database and never changes read
flags, moves messages, or deletes mail.</p>
<ul>
<li><code>fetch</code> pages through one or more folders, filtered by sender and recipient,
with per-folder cursors so your app can resume where it left off.</li>
<li><code>watch</code> follows a folder with IMAP IDLE and pushes new messages to the
browser as <code>post</code> activities.</li>
<li><code>send</code> submits a message over SMTP and reports which recipients the server
accepted or rejected.</li>
</ul>
<p>Credentials take a password or an access token for each of IMAP and SMTP.
Connections require TLS or STARTTLS. See the
<a href="/platforms/#email">email section of the platforms page</a> for the envelopes.</p>
<h2 id="messenger-and-instagram">Messenger and Instagram</h2>
<p><a href="https://github.com/sockethub/sockethub/tree/v5.0.0-beta.2/packages/platform-messenger"><code>@sockethub/platform-messenger</code></a>
and
<a href="https://github.com/sockethub/sockethub/tree/v5.0.0-beta.2/packages/platform-instagram"><code>@sockethub/platform-instagram</code></a>
send text messages through Meta&#39;s Messenger and Instagram APIs. Both are
stateless: store a token, then <code>send</code>. No <code>connect</code> step and no webhook
hosting. Sockethub sends as a Facebook Page or an Instagram professional
account, not as a personal profile, and your app brings the recipient&#39;s
scoped ID from its own incoming-message integration.</p>
<p>These are outgoing-only. Incoming messages, delivery receipts, attachments,
and OAuth onboarding stay with your application and Meta&#39;s review process.</p>
<h2 id="also-in-beta2">Also in beta.2</h2>
<ul>
<li>The metadata platform now surfaces a schema.org <code>Event</code> embedded as JSON-LD,
so link previews for Luma, Meetup, and Eventbrite pages carry the event
name, start and end, location, and status.</li>
<li>CalDAV accepts and round-trips <code>STATUS</code> on events, and calendar and address
book discovery is cached across requests.</li>
<li>XMPP roster activities are schema-valid, and inbound subscription requests
now arrive as <code>request-friend</code>.</li>
<li>IRC refuses to connect to private and loopback addresses, and incoming
<code>NOTICE</code> lines are attributed to their sender.</li>
<li>The server rate-limits persistent platform starts per client IP.</li>
</ul>
<p>The <a href="https://github.com/sockethub/sockethub/releases/tag/v5.0.0-beta.2">full changelog</a>
has every fix. The documentation on this site tracks beta.2:
<a href="/get-started/">get started</a> and <a href="/platforms/">platforms</a>.</p>
]]></description><guid isPermaLink="false">Sockethub 5.0.0-beta.2 adds email, Messenger, and Instagram</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Fri, 06 Nov 2026 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 5.0.0 enters beta]]></title><description><![CDATA[<p>Sockethub 5.0.0 has left alpha. The first beta,
<a href="https://github.com/sockethub/sockethub/releases/tag/v5.0.0-beta.0">5.0.0-beta.0</a>,
is available now:</p>
<pre><code>npm install -g sockethub@next
</code></pre>
<p>Prereleases now publish under the <code>next</code> tag, for npm and for the container
image at <code>ghcr.io/sockethub/sockethub:next</code>. The old <code>@alpha</code> tag stays at the
last alpha and will not be updated again.</p>
<p>When we <a href="/news/release-500-alpha/">announced the alphas</a> in January we said
we&#39;d post again once we reached beta. This is that post.</p>
<h2 id="what-beta-means">What beta means</h2>
<p>The alpha series was about getting the architecture right: the package split,
the move to Bun and BullMQ, and the
<a href="/news/alpha-12-canonical-context/">canonical AS2.0 contexts</a>. That work is
done. Beta means the shape of 5.0 is settled.</p>
<ul>
<li><strong>This is largely what 5.0 will be.</strong> The message envelope, the client API,
the platform interface, and the published schemas are in their 5.0 form.
Code written against the beta should carry over to the final release.</li>
<li><strong>It is already stable.</strong> The last stretch of alphas went into hardening
rather than features, mostly IRC session and nick handling, CardDAV
round-trip correctness, and safer outbound fetching. It has held up well in
day-to-day use.</li>
<li><strong>It is not a complete feature freeze.</strong> We will still land additions that
leave existing behaviour alone, and the newer platforms (CalDAV and CardDAV)
will keep filling out.</li>
<li><strong>Breaking changes are the exception now.</strong> When one is unavoidable it is
listed under Breaking Changes at the top of the release notes, as the IRC
attendance change is in beta.0. If that section is empty, upgrading is safe.</li>
</ul>
<h2 id="new-in-beta0">New in beta.0</h2>
<p>Beyond the fixes, a few things landed since the last alpha:</p>
<ul>
<li>The server serves an info page at its root and advertises its connection
endpoints in the service descriptor, so clients can connect by discovery
instead of a hardcoded URL.</li>
<li>A <code>GET /health</code> endpoint for anyone running Sockethub behind a load balancer
or orchestrator.</li>
<li>CalDAV reads published iCalendar feeds, and the CardDAV example now covers
create, edit, delete, and list.</li>
<li>IRC can list a server&#39;s channels, and answers attendance queries with a
single <code>members</code> message.</li>
</ul>
<p>The <a href="https://github.com/sockethub/sockethub/releases/tag/v5.0.0-beta.0">full changelog</a>
has everything.</p>
<h2 id="the-road-to-50">The road to 5.0</h2>
<p>We expect a short beta series rather than another long one. Each beta will
bundle the fixes that come out of real use, and 5.0.0 follows once those settle
down. The most useful thing you can do is run the beta against your own IRC,
XMPP, or DAV servers and
<a href="https://github.com/sockethub/sockethub/issues">tell us what breaks</a>.</p>
<p>The documentation on this site tracks the beta: <a href="/get-started/">get started</a>,
<a href="/platforms/">platforms</a>, and the <a href="/client/">client</a> and <a href="/server/">server</a>
guides.</p>
]]></description><guid isPermaLink="false">Sockethub 5.0.0 enters beta</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Mon, 12 Oct 2026 00:00:00 GMT</pubDate></item><item><title><![CDATA[Alpha 12 — Canonical AS2.0 contexts]]></title><description><![CDATA[<p>With the 5.0.0-alpha.12 release, Sockethub&#39;s message envelope is a first-class
<a href="https://www.w3.org/TR/activitystreams-core/">ActivityStreams 2.0</a> and JSON-LD
citizen. Every outgoing and incoming message carries a canonical three-element
<code>@context</code> array identifying the AS2 base vocabulary, the Sockethub gateway
vocabulary, and the specific platform vocabulary in play.</p>
<h2 id="what-changed">What changed</h2>
<p>Before:</p>
<pre><code class="language-json">{
  &quot;context&quot;: &quot;irc&quot;,
  &quot;type&quot;: &quot;send&quot;,
  ...
}
</code></pre>
<p>After:</p>
<pre><code class="language-json">{
  &quot;@context&quot;: [
    &quot;https://www.w3.org/ns/activitystreams&quot;,
    &quot;https://sockethub.org/ns/context/v1.jsonld&quot;,
    &quot;https://sockethub.org/ns/context/platform/irc/v1.jsonld&quot;
  ],
  &quot;type&quot;: &quot;send&quot;,
  ...
}
</code></pre>
<p>The server now routes by resolving the platform context URL in that array, not
by matching a bespoke <code>context</code> string. That unlocks four things:</p>
<ul>
<li><strong>Proper AS2.0 compliance.</strong> Payloads validate against any off-the-shelf
JSON-LD or AS2 tool — no Sockethub-specific reader required.</li>
<li><strong>Deterministic platform resolution.</strong> The platform identity lives in the
context URL itself, not in convention. No more guessing from a short name.</li>
<li><strong>Versioned platform vocabularies.</strong> A platform can ship breaking changes
under <code>/v2.jsonld</code> without forcing every consumer to migrate at once.</li>
<li><strong>A real schema registry.</strong> The server exposes each platform&#39;s schema
metadata (<code>contextUrl</code>, <code>contextVersion</code>, <code>schemaVersion</code>) so clients build
canonical arrays without hardcoding URLs.</li>
</ul>
<h2 id="new-client-apis">New client APIs</h2>
<p>Two additions to <code>@sockethub/client</code> make this easy:</p>
<h3 id="await-scready"><code>await sc.ready()</code></h3>
<p>Waits for the schema registry to finish loading. Messages sent before readiness
are queued and flushed afterward; anything emitted after <code>ready()</code> is
validated immediately on the client.</p>
<pre><code class="language-javascript">const sc = new SockethubClient(socket);
await sc.ready();
</code></pre>
<h3 id="sccontextforplatform"><code>sc.contextFor(platform)</code></h3>
<p>Builds the canonical three-element array from server metadata. Use it instead
of hardcoding URLs:</p>
<pre><code class="language-javascript">sc.socket.emit(&#39;message&#39;, {
  &#39;@context&#39;: sc.contextFor(&#39;irc&#39;),
  type: &#39;send&#39;,
  actor:  { id: &#39;alice@irc.libera.chat&#39;, type: &#39;person&#39;, name: &#39;alice&#39; },
  target: { id: &#39;#sockethub@irc.libera.chat&#39;, type: &#39;room&#39;, name: &#39;#sockethub&#39; },
  object: { type: &#39;message&#39;, content: &#39;hello&#39; }
});
</code></pre>
<p><code>contextFor()</code> is preferred over hand-writing the array because it derives URLs
from the live schema registry and stays correct across server versions.</p>
<h2 id="why-this-matters">Why this matters</h2>
<p>Sockethub has always carried the spirit of AS2.0, but not always the letter.
Alpha 12 closes that gap. The protocol gateway now speaks a format that any
AS2 consumer can read — which means an ActivityPub inbox, a Fediverse tool, or
anything that knows JSON-LD can parse Sockethub traffic natively.</p>
<p>Upgrade with <code>npm install -g sockethub@alpha</code>.
Full changelog: <a href="https://github.com/sockethub/sockethub/releases/tag/v5.0.0-alpha.12">v5.0.0-alpha.12</a>.</p>
]]></description><guid isPermaLink="false">Alpha 12 — Canonical AS2.0 contexts</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sun, 29 Mar 2026 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 5.0.0 alpha releases]]></title><description><![CDATA[<p>Sockethub 5.0.0 has been a multi-year project, and we&#39;ve been quietely releasing alpha builds for testing. These alpha releases have major rewrite and architectural improvements across the board. </p>
<p>Stability has improved a lot and so we&#39;re announcing the alpha releases are available for anyone who&#39;d like to try them out. </p>
<p>We won&#39;t individually announce each alpha release, but will do so once we move to beta. </p>
<p>Some new features include:  </p>
<ul>
<li>Packaging changes, the <code>sockethub</code> package is still the main package, but works as a meta package for a number of packages in the <code>@sockethub</code> namespace. i
e.g. <code>@sockethub/server</code>, <code>@sockethub/client</code>, <code>@sockethub/platform-xmpp</code></li>
<li>Greatly improved unit and integration tests</li>
<li>A New Metadata Platform!</li>
<li>An Examples package</li>
<li>Migrate to BullMQ</li>
<li>Migrate to Bun</li>
<li>Improved documentation</li>
<li>So much more...</li>
</ul>
<p>To try it out, you can run <code>npm install -g sockethub@alpha</code></p>
<p>For a full list of changes, see the <a href="https://github.com/sockethub/sockethub/releases">Sockethub release page</a>.</p>
]]></description><guid isPermaLink="false">Sockethub 5.0.0 alpha releases</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Mon, 19 Jan 2026 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 4.1.0]]></title><description><![CDATA[<p>Sockethub 4.1.0 has been released! Lots of stability improvements, for a list see the <a href="https://github.com/sockethub/sockethub/releases/tag/v4.1.0">Sockethub release page</a>.</p>
]]></description><guid isPermaLink="false">Sockethub 4.1.0</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 02 Sep 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 4.0.1]]></title><description><![CDATA[<p>Sockethub 4.0.1 has been released! This release fixes a few minor issues present in the previous release, for a list of fixes see the <a href="https://github.com/sockethub/sockethub/releases/tag/v4.0.1">Sockethub release page</a>.</p>
]]></description><guid isPermaLink="false">Sockethub 4.0.1</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sun, 23 May 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 4.0.0]]></title><description><![CDATA[<p>Sockethub 4.0.0 has been released! This release has a few major updates to the underlying system, namely switching from <code>node-simple-xmpp</code> to <code>xmpp.js</code>, from <code>Kue</code> to <code>Bull</code> and upgrading to <code>socket.io v4</code>. Additionally, as we performed these significant overhauls of the code, we added more tests and optimizations. This release should be overall a lot faster. For a full list of changes, see the <a href="https://github.com/sockethub/sockethub/releases/tag/v4.0.0">Sockethub release page</a>.</p>
]]></description><guid isPermaLink="false">Sockethub 4.0.0</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 20 May 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 3.2.2]]></title><description><![CDATA[<p>Sockethub 3.2.2 has been released and focuses mainly on stability and bugfixes, highlights include pegging the sockethub.io dependency version to resolve a CORS issues, and a hotfix for the IRC platforms upstream library <code>irc-socket</code> allowing TLS connections. For a full list of changes, see <a href="https://github.com/sockethub/sockethub/releases/tag/v3.2.2">Sockethub release page</a>.</p>
]]></description><guid isPermaLink="false">Sockethub 3.2.2</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Mon, 22 Feb 2021 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 3.2]]></title><description><![CDATA[<p>Sockethub 3.2 has been released and includes a lot of improvements and work that has progressed throughout the year. The most notable improvement has come with the spawning of new threads for platform modules to help protect against possible platform crashes and memory leaks, which has greatly improved the stability of sockethub core. For a full list of changes, see <a href="https://github.com/sockethub/sockethub/releases/tag/v3.2.0">Sockethub release page</a>.</p>
]]></description><guid isPermaLink="false">Sockethub 3.2</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sat, 26 Dec 2020 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub 3.x]]></title><description><![CDATA[<p>Sockethub 3.0 has been released and includes a lot of improvements focusing mainly on XMPP and IRC, additionally a ton of internal improvements. Ongoing releases tracked on the <a href="https://github.com/sockethub/sockethub/releases">Github page</a>. </p>
]]></description><guid isPermaLink="false">Sockethub 3.x</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 26 Sep 2019 00:00:00 GMT</pubDate></item><item><title><![CDATA[Kosmos group chat client]]></title><description><![CDATA[<p>Over the past several months, we&#39;ve been quietly working away at an open-source group chat platform, build upon Sockethub and remoteStorage, and sprinkling of other tools and services. It aims to address the same area as Slack and HipChat, but built in the open, on open protocols (IRC &amp; XMPP) allowing anyone to interface without needing to commit to a solitary platform. Today we met in Berlin and plan for a couple days of hacking and planning for our MVP target which should be coming soon.</p>
<p>I haven&#39;t been announcing every Sockethub release, as they are very frequent and incremental, but be sure to check the github to see the latest activity.</p>
<p>[ <a href="https://kosmos.org">kosmos</a> | <a href="https://github.com/67p/hyperchannel">github.com/67p/hyperchannel</a> | <a href="https://github.com/sockethub/sockethub">github.com/sockethub/sockethub</a>]</p>
]]></description><guid isPermaLink="false">Kosmos group chat client</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 04 May 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Hackerbeach V milestones v1.0.4]]></title><description><![CDATA[<p>While 2016 was a year of mostly maintenance work, 2017 has started off strong. Meeting up with several of the guys at <a href="https://5apps.com">5apps</a> for <a href="http://hackerbeach.org">Hackerbeach V</a>, we&#39;re working toward building an open-source Slack replacement using unhosted technologies Sockethub and <a href="http://remotestorage.io">remoteStorage</a>. No further details at this time, but we&#39;re close to an MVP. In the meantime, I released Sockethub v1.0.4 and activity should increase as we deploy Sockethub for multi-user use.</p>
<p>[ <a href="https://github.com/sockethub/sockethub/releases/tag/v1.0.4">release v1.0.4</a> ]</p>
]]></description><guid isPermaLink="false">Hackerbeach V milestones v1.0.4</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Mon, 23 Jan 2017 00:00:00 GMT</pubDate></item><item><title><![CDATA[Version 1.0.0 released]]></title><description><![CDATA[<p>A branch which has been worked on for most of 2015 has been merged to the master branch and released as version 1.0.0. Currently only a couple platforms are fully ported over, but the plan is to continue to make incremental improvements. It&#39;s more stable and lightweight than the 0.x releases.</p>
<p>[ <a href="https://github.com/sockethub/sockethub/releases/tag/v1.0.0">release v1.0.0</a> | <a href="https://github.com/sockethub/sockethub/blob/v1.0.0/CHANGELOG.md">CHANGELOG</a> ]</p>
]]></description><guid isPermaLink="false">Version 1.0.0 released</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Mon, 02 Nov 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[The Oblivion Bar @ CCCamp2015]]></title><description><![CDATA[<p>The team working on <a href="https://kosmos.org/">Kosmos</a> will have <a href="https://events.ccc.de/camp/2015/wiki/Village:The_Oblivion_Bar">a tent at Chaos Communication Camp 2015</a>. We&#39;ll be giving a talk on Kosmos, remoteStorage and Sockethub.</p>
]]></description><guid isPermaLink="false">The Oblivion Bar @ CCCamp2015</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Tue, 11 Aug 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Microformat2 & RSS news entries]]></title><description><![CDATA[<p>Not only do we now have an <a href="http://sockethub.org/feed.xml">RSS feed</a> but and all of our news entries contain <a href="http://microformats.org/wiki/microformats2">microformat2</a> attributes and can receive webmentions via. <a href="http://webmention.io">webmention.io</a> <em>(though we&#39;re still working on doing something with those webmentions)</em></p>
]]></description><guid isPermaLink="false">Microformat2 &amp; RSS news entries</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sun, 10 May 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[New website]]></title><description><![CDATA[<p>The Sockethub website has had a makeover, we&#39;re now using the awesome <a href="http://metalsmith.io">metalsmith</a> static site generator to power things, this allows us to easily maintain news updates and provide an rss feed, and just generally keep things more modular.</p>
]]></description><guid isPermaLink="false">New website</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sat, 09 May 2015 00:00:00 GMT</pubDate></item><item><title><![CDATA[Release v0.3.x]]></title><description><![CDATA[<p>fixes to the IRC platform and improved docker support</p>
<p>[ <a href="https://github.com/sockethub/sockethub/releases/tag/v0.3.0">release v0.3.0</a> | <a href="https://github.com/sockethub/sockethub/blob/v0.3.0/CHANGELOG.md">CHANGELOG</a> ]</p>
]]></description><guid isPermaLink="false">Release v0.3.x</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Sun, 16 Nov 2014 00:00:00 GMT</pubDate></item><item><title><![CDATA[Release v0.2.x]]></title><description><![CDATA[<p>The sockethub v0.2.x branch has been released!</p>
<p>[ <a href="https://github.com/sockethub/sockethub/releases/tag/v0.2.0">release v0.2.0</a> | <a href="https://github.com/sockethub/sockethub/blob/v0.2.0/CHANGELOG.md">CHANGELOG</a> ]</p>
]]></description><guid isPermaLink="false">Release v0.2.x</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Tue, 09 Sep 2014 00:00:00 GMT</pubDate></item><item><title><![CDATA[Dogfeed RSS/Atom Reader released]]></title><description><![CDATA[<p>A fully unhosted RSS/Atom reader using Sockethub + <a href="http://remotestorage.io">remoteStorage</a></p>
<p>[ <a href="https://dogfeed.5apps.com">dogfeed</a> | <a href="https://github.com/silverbucket/dogfeed">github repository</a> | <a href="https://groups.google.com/forum/#!topic/unhosted/xzOueGY2GYA">official announcement</a> ]</p>
]]></description><guid isPermaLink="false">Dogfeed RSS/Atom Reader released</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Thu, 05 Sep 2013 00:00:00 GMT</pubDate></item><item><title><![CDATA[Sockethub lightning talk at OHM2013]]></title><description><![CDATA[<p><a href="https://silverbucket.net">Nick Jennings</a> will be giving a talk tonight on Sockethub @ <a href="https://program.ohm2013.org">OHM2013</a></p>
<p>[ <a href="https://program.ohm2013.org/event/475.html">talk overview</a> ]</p>
]]></description><guid isPermaLink="false">Sockethub lightning talk at OHM2013</guid><dc:creator><![CDATA[Nick Jennings]]></dc:creator><pubDate>Wed, 31 Jul 2013 00:00:00 GMT</pubDate></item></channel></rss>