Sign in

Weaver

@weaver.sh
246 followers 32 following 31 posts

Share your words, your way write something: weaver.sh/editor explore: weaver.sh devlog: weaver.weaver.sh source: tangled.org/nonbinary.computer/weaver written by @nonbinary.computer support: github.com/sponsors/orual

PostsRepliesMedia
Reposted by Weaver
Orual @nonbinary.computer · 23/05/2026
@weaver.sh and vod.place are currently down until further notice, I had to disassemble my homelab pending upcoming [redacted]. please accept this photo of portia flopping in the dust pile where they used to be.
5331
Reposted by Weaver
Orual @nonbinary.computer · 16/04/2026
now that bsky is up again so people will see this post, you should go read this long essay on library design!
1214
Weaver @weaver.sh · 24/01/2026
<3
120
Weaver @weaver.sh · 21/01/2026
Entry records should have the date information by default. A featured image isn't in the lexicon right now, but definitely is in consideration. Opengraph images currently just use the top image embed.
010
Weaver @weaver.sh · 14/01/2026
Tip your local index plx
020
Weaver @weaver.sh · 14/01/2026
where the notebooks live. needs some @bad-example.com patented googly eyes, still.
061
Reposted by Weaver
Standard.site @standard.site · 14/01/2026
Join our community on Signal to discuss Standard.site implementation and more ! signal.group#CjQKINS5Lrgq...
signal.group
Signal Messenger Group
Follow this link to join a group on Signal Messenger.
2317
Weaver @weaver.sh · 14/01/2026
Illustration of the everything ecosystem in action weaver.sh/did:plc:qvyw...
Stop using natural language interfaces
hikikomorphism@hikikomorphism.bsky.social
View on Leaflet ↗

Natural language is a wonderful interface, but just because we suddenly can doesn't mean we always should. LLM inference is slow and expensive, often taking tens of seconds to complete. Natural language interfaces have orders of magnitude more latency than normal graphic user interfaces. This doesn't mean we shouldn't use LLMs, it just means we need to be smart about how we build interfaces around them.

The Latency Problem

There's a classic CS diagram visualizing latency numbers for various compute operations: nanoseconds to lock a mutex, microseconds to reference memory, milliseconds to read 1 MB from disk. LLM inference usually takes 10s of seconds to complete. Streaming responses help compensate, but it's slow.

Compare interacting with an LLM over multiple turns to filling in a checklist, selecting items from a pulldown menu, setting a value on a slider bar, stepping through a series of such interactions as you fill out a multi-field dialogue. Graphic user interfaces are fast, with responses taking milliseconds, not seconds. But. But: they're not smart, they're not responsive, they don't shape themselves to the conversation with the full benefits of semantic understanding.
0101
Weaver @weaver.sh · 13/01/2026
If you hit the weaver index endpoints (like tangled.org/nonbinary.co...) it ensures you get the latest version of all the info, handling the cross-repo canonical version and contribution logic.
tangled.org
010
Weaver @weaver.sh · 13/01/2026
the document record that corresponds to an entry is designed to provide everything you need to render it, including hydrated profiles of all contributors. potentially it can even include blobrefs to rendered html and generated css.
110
Weaver @weaver.sh · 13/01/2026
Already have, actually. Haven't pushed all the document records yet, but every weaver notebook that opts into global publication (and so gets a subdomain or a custom domain) uses these lexicons alongside weaver's. weaver.sh/record/at://...
site.standard.publication record linked in the post. shows a colour scheme in rgb format, the name of the publication, "Weaver", and the url "https://weaver.weaver.sh" where the notebook/publication can be accessed
111
Reposted by Weaver
brendan @schlage.town · 12/01/2026
welcome Weaver to the open social publishing web! new atproto publishing app, looking really good…and will be adopting @standard.site lexicons!
1283
Reposted by Weaver
Tangled @tangled.org · 12/01/2026
happy monday! we're excited to finally announce that we have a dedicated documentation site: docs.tangled.org! 📜 @oppi.li also wrote about how he built it: blog.tangled.org/docs let us know think, and feel free to shoot PRs to add stuff here!
screenshot of the docs site
516624
Weaver @weaver.sh · 12/01/2026
Previous issues resolved. Enjoy this image of @nonbinary.computer's cat, Portia. weaver.sh/did:plc:yfvw...
Portia the cat, curled in her bed, looking out cutely over the edge at the camera.
0112
Weaver @weaver.sh · 12/01/2026
index.weaver.sh custom domain queries failing seem to be the culprit. Fix pending.
grafana dashboard showing 500 errors and error logs from the weaver index
011
Weaver @weaver.sh · 12/01/2026
some links may not load properly. alpha.weaver.sh routes continue to work, in testing.
alpha.weaver.sh
Weaver
Share your words, your way.
121
Weaver @weaver.sh · 12/01/2026
Presently having some network trouble.
111
Reposted by Weaver
Orual @nonbinary.computer · 12/01/2026
Settings menus... Note: this is actually under half of the available options, working on layout. No, you won't have to mess around with them if you don't want to, the full 16-colour theme gets generated from sensible defaults based on your colour choices. but if you're picky like me...
loooooong expanded settings menu. heading is Notebook Settings. fields include "title", "path", a checkbox to enable global publication, tags, and a host of colour editor fields, as well as dropdowns for code themes
0121
Weaver @weaver.sh · 11/01/2026
note to self: swap relevant external link hrefs for aturi.to
020
Weaver @weaver.sh · 10/01/2026
Because entries are served as server-rendered HTML, reading mode works perfectly already. RSS is coming as well. Subscriptions to users or individual notebooks will be supported. There are also native social features planned, with lexicons already written but not yet used.
010
Weaver @weaver.sh · 10/01/2026
@nonbinary.computer stands behind every single line of code in Weaver. All of it is open-source, and always will be, whether they wrote it by hand or not. LLMs are an immense force multiplier for a solo developer, and a double-edged sword. They are used carefully and their work is checked carefully.
020
Weaver @weaver.sh · 10/01/2026
The CLAUDE.md for Weaver's monorepo is here: tangled.org/nonbinary.co... It draws heavily from the nextest AGENTS.md linked below: github.com/nextest-rs/n...
110
Weaver @weaver.sh · 10/01/2026
On LLMs, because transparency is valuable. The Oxide RFD on LLM usage, linked, aligns with usage of LLMs in Weaver's development. rfd.shared.oxide.computer/rfd/0576 No substantial human-facing writing for Weaver will be LLM-written. No AI-generated images will be used in branding or elsewhere.
rfd.shared.oxide.computer
576 - Using LLMs at Oxide / RFD / Oxide
100
Weaver @weaver.sh · 10/01/2026
Logo doodle. @nonbinary.computer is not much of a visual artist, would be interested in assistance from someone with more experience to help swap away from the wikipedia weaver bird not-a-logo.
Stylized line art weaver bird and nest on graph paper-like background
081
Weaver @weaver.sh · 10/01/2026
Lastly, Weaver supports inline and block-level LaTeX formatted math. You can edit an equation inline and see the results in real-time. When published, this is rendered server-side into MathML, so you get exactly what you wanted to communicate on the page from the start, even with JS turned off.
Math examples in the weaver editor:

This sentence uses `$` delimiters to show math inline: $\sqrt{3x-1}+(1+x)^2$
$\sum_{k=1}^n a_k b_k$: Mathematical expression at head of line

`\` may follow just after the first `$`: $\{1, 2, 3\}

**The Cauchy-Schwarz Inequality**

$$\left( \sum_{k=1}^n a_k b_k \right)^2 \leq \left( \sum_{k=1}^n a_k^2 \right) \left( \sum_{k=1}^n b_k^2 \right)$$

$a<b>c</b>$

$${a*b*c} _c_ d$$

$not `code`$

$![not an](/image)$

$<https://not.a.link/>$

$&alpha;$
052
Weaver @weaver.sh · 10/01/2026
This devlog about the underlying atproto library that makes Weaver possible shows off lots of wonderful code blocks (and they're going to get even better when Weaver integrates treesitter syntax highlighting via arborium arborium.bearcove.eu#rust). weaver.sh/nonbinary.co...
weaver.sh
XRPCifying your life
I recently used Jacquard to write an ~AppView~ Index for Weaver. I alluded in my posts about my devlog about that experience how easy I had made the actual w...
171
Weaver @weaver.sh · 10/01/2026
Rich embed content (the longform embeds aren't just for our own format, we also support Whitewind, Leaflet, and Pckt, with more formats to come), sidenotes, and inset asides. And atproto embeds work for any type of record even without explicit support! Weaver has a pretty smart generic renderer.
Another screenshot of the essay linked in the above post, illustrating more embed types and formatting, this time in dark mode.
1103
Weaver @weaver.sh · 10/01/2026
This standalone essay is perhaps the most complete single example of what Weaver can do in terms of richly formatted text and content: weaver.sh/nonbinary.co...
Screenshot of the linked essay, with examples of asides, bluesky post embeds, a sidenote, and other nice formatting.
1347
Weaver @weaver.sh · 10/01/2026
Reposted a number of progress updates from the personal account on here, so people who haven't been following can get an idea of where Weaver came from and how it got to this point.
020
Reposted by Weaver
Orual @nonbinary.computer · 27/11/2025
Ultimately you will be able to customize the theme for your own notebook, with quite a bit of granularity. This is mostly rosepinetheme.com with the contrast turned up a bit from Rosé Pine Dawn in the light mode
rosepinetheme.com
Something beautiful
All natural pine, faux fur and a bit of soho vibes for the classy minimalist.
021
Reposted by Weaver
Orual @nonbinary.computer · 27/11/2025
it also has a light mode that looks quite nice, I just have my system set to prefer dark mode most of the time.
261
Reposted by Weaver
Orual @nonbinary.computer · 27/11/2025
Still a *bunch* of bugs to fix in the editor before it's really properly usable, but it actually does the thing it's supposed to now, at least a simple version of it. alpha.weaver.sh/record/at://...
Image of the improved editor interface, with fields for title and tags, and an embedded image. A work-in-progress article on the editor itself.Record view of the notebook entry just created in the web editor
4314
Reposted by Weaver
Orual @nonbinary.computer · 19/12/2025
weaver already does math actually. main thing missing is the diagrams and some of the additions to code blocks. also, goal with weaver is basically zero JS required for the actual renderer output to work. big reason why i don't use MathJAX or KaTeX.
111
Reposted by Weaver
Orual @nonbinary.computer · 02/01/2026
Weaver will also adopt this, particularly for people who want to host a notebook or entry at a fully custom url. Need to work out the infra for that part, but it's near the top of the queue.
1231
Reposted by Weaver
Orual @nonbinary.computer · 04/10/2025
Context is I got stuck procrastinating on a project I'm working on which is called 'Weaver' (named after en.wikipedia.org/wiki/Ploceidae), because of frustrations with existing atproto rust libraries. So I unstuck myself.
en.wikipedia.org
Ploceidae - Wikipedia
121
Reposted by Weaver
Orual @nonbinary.computer · 13/11/2025
what happens when you're on a record of yours and click Edit
a view of the Weaver pretty record editor UI:

Record View
URIat://did:plc:yfvwmnlztr4dwkb7hwz55r2g/app.bsky.feed.post/3m57p65573k2d
CID
bafyreifugrwwtvnk2dcxi4ocgmfconlqoxv5k7fpg2ysi2z7znr7vl2nga
$type [nsid]
createdAt [datetime]
embed
embed.$type [nsid]
images
[1]
images[0]
embed.images[0].alt
aspectRatio
embed.images[0].aspectRatio.height
embed.images[0].aspectRatio.width
embed.images[0].image [blob]
CID:
Size:
MIME Type:
image/jpeg
Blob preview
langs
[1]
langs[0]
text
021
Reposted by Weaver
Orual @nonbinary.computer · 20/12/2025
editor workflow still needs some work, but we got the new stuff in. next entry of mine probably going to make good use :) this is one area where the editing and publish formatting (in the current hybrid editor) will diverge for usability. need to make a preview button. also a raw text editor option
Existing weaver entry with an aside added.weaver editor workflow for sidenotes/footnotes in hybrid editor. displays mostly as plaintext with a bit of clarifying styling to differentiate
182
Reposted by Weaver
Orual @nonbinary.computer · 30/11/2025
Getting there, though I *do* need to fix the broken code block editing and yet more cursor jank.
Profile page for Weaver alpha webapp, logged-in UI, with edit buttons, ettc.Light mode notebook index page for Weaver alpha, logged-in UI, showing overflow menu for notebook entries.
1131
Reposted by Weaver
Orual @nonbinary.computer · 22/12/2025
cooking
weaver editor showing a leaflet document embed, in the same style weaver embeds its own posts. document in question is one of @laurenshof.online's ATmosphere Report posts, about Eurosky
3321
Weaver @weaver.sh · 10/01/2026
<3
020
Weaver @weaver.sh · 10/01/2026
This is I think down to a lack of platforms that hit the right balance around ease of use and flexibility in content format & presentation.
120
Weaver @weaver.sh · 10/01/2026
Write whatever you want, beautifully. Collaborate effortlessly. Pull in anything from the atmosphere you find interesting to illustrate. And that's just the beginning. weaver.sh
weaver.sh
Weaver
Share your words, your way.
0202
Reposted by Weaver
dame @dame.is · 10/01/2026
New ATproto writing app: “Weaver is designed to be a flexible platform for medium and long-form writing on atproto. I was inspired by how weaver birds build their own homes, and by the notebooks, physical and virtual, that I create in the course of my work, to ideate, to document, & to inform.”
1232
Weaver @weaver.sh · 10/01/2026
Also to that end, the weaver markdown renderer and editor have gotten JS bindings. Note that these are very rough at present, and require further testing. www.npmjs.com/package/@wea... www.npmjs.com/package/@wea... www.npmjs.com/package/@wea... www.npmjs.com/package/@wea...
npmjs.com
031
Weaver @weaver.sh · 10/01/2026
To aid this, index.weaver.sh will gain an set of XRPC endpoints for rendering of notebook entries and other records. Weaver's ability to render virtually any atproto data beautifully is one of its major strengths, and this will make make it more composable.
141
Weaver @weaver.sh · 10/01/2026
In the coming days, expect improvements to performance on subdomain routes, as well as full custom domain hosting & arbitrary entry routes supported by standard.site publication and document records. Note that other apps will need to support weaver's entry format to display weaver notebook entries.
271
Weaver @weaver.sh · 10/01/2026
Weaver is also dropping the 'alpha' subdomain and moving content to the root domain as part of the above changes, though all links to it will still resolve correctly. The editor should now contain substantially fewer bugs.
151
Weaver @weaver.sh · 10/01/2026
Some announcements. First, brand account. Hi. Second, a preliminary version of subdomain hosting for Weaver notebooks is working. Currently there is no interface to enable it, but the required architectural changes in the app had to come first. weaver.weaver.sh/weaver_-_lon...
weaver.weaver.sh
Weaver - Long-form writing
Or: "Get in kid, we're rebuilding the blogosphere!" I grew up, like a lot of people on Bluesky, in the era of the internet where most of your online social i...
1465
Reposted by Weaver
Orual @nonbinary.computer · 19/12/2025
weaver getting some Tufte-esque touches and a few other cool new formatting features upcoming

The Blogosphere

I am an atheist in large part because of a blog called Common Sense Atheism.The author, Luke Muehlhauser, was criticising both Richard Dawkins and some Christian apologetics I was familiar with. Luke's blog was part of a cluster of blogs out of which grew the rationalists, one of, for better or for worse, the most influential intellectual movements of the 21st century.I also read blogs like boingboing.net, was a big fan of Cory Doctorow. I figured out I am trans in part because of Thing of Things,Specifically their piece on the cluster structure of genderspace. a blog by Ozy Frantz, a transmasc person in the broader rationalist and Effective Altruist blogosphere.One thing these all have in common is length. Part of the reason I only really got onto Twitter in 2020 or so was because the concept of microblogging, of having to fit your thoughts into such a small package, baffled me for ages.Amusingly I now think that being on Twitter and now Bluesky made me a better writer. Restrictions breed creativity, after all.

    On Platform Decay

    Through all of this I was never really satisfied with the options that were out there for long-form writing. Wordpress required too much setup. Tumblr's system for comments remains insane. Hosting my own seemed like too much money to burn on something nobody might read.

But at the same time, Substack's success proves that there is very much a desire for long-form writing, enough that people will pay for it, and that investors will back it. There are thoughts and forms of writing that you simply cannot fit into a post or even a thread of posts.

Plus, I'm loathe to enable a centralised platform like Substack where the owners are unfortunately friendly to fascists.I am very much a fan of freedom of expression. I'm not so much a fan of paying money to Nazis.That's where the at:// protocol and Weaver comes in.

{.aside}
> **On Platform Decay**
>
> Through all of this I was never really satisfied with the options that were out there for long-form writing. Wordpress required too much setup. Tumblr's system for comments remains insane. Hosting my own seemed like too much money to burn on something nobody might read.

But at the same time, Substack's success proves that there is very much a desire for long-form writing, enough that people will pay for it, and that investors will back it. There are thoughts and forms of writing that you simply cannot fit into a post or even a thread of posts.

Plus, I'm loathe to enable a centralised platform like Substack where the owners are unfortunately friendly to fascists.[^substack]
[^substack]: I am very much a fan of freedom of expression. I'm not so much a fan of paying money to Nazis.

That's where the `at://` protocol and Weaver comes in.
5252
Reposted by Weaver
Orual @nonbinary.computer · 15/12/2025
The notebooks finally have an index. I wrote about why I wrote it last, what made that possible, what it made challenging, and how useful it was to get a very practical understanding of how I needed to access my data in the app, and to shape it to make that easier. alpha.weaver.sh/nonbinary.co...
alpha.weaver.sh
Writing the AppView Last
fn fetchentryview( &self, entryref: &StrongRef<'>, ) -> impl Future<Output = Result<EntryView<'static>, WeaverError>> where
2184