{
"path": "/3mdgq56uf3c2d",
"site": "at://did:plc:aurnkk6uy6axy66uqaq6dqy6/site.standard.publication/3m6gjuzizxc27",
"tags": [],
"$type": "site.standard.document",
"title": "jklb.social manifesto",
"content": {
"$type": "pub.leaflet.content",
"pages": [
{
"id": "019c0124-16b6-7224-91e0-6679cca1f89e",
"$type": "pub.leaflet.pages.linearDocument",
"blocks": [
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": ""
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.image",
"image": {
"$type": "blob",
"ref": {
"$link": "bafkreicxdxvrz2joxkq3rvz27e2yuyn6czdpozhfhecn7otozh4chbbha4"
},
"mimeType": "image/png",
"size": 969171
},
"aspectRatio": {
"width": 2194,
"height": 1648
}
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 1,
"facets": [],
"plaintext": "jklb.social is..."
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 11,
"byteStart": 0
},
"features": [
{
"uri": "https://jklb.social",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "jklb.social: An experimental bluesky client in alpha! You can try it today. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": ""
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 1,
"facets": [],
"plaintext": "The virtues of jklb.social"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 2,
"facets": [],
"plaintext": "j, k, l, b. (keybindings! One post per view!)"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "j / k navigate you thru posts. l is like. b is boost/re-post. That's all just your right hand, so you can drink a coffee as you do all this."
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "To reply or quote-post you'll need both hands, so those hot-keys are r and q. Full keybindings directory can be seen by pressing space. One I particularly like is o, opens the first hyperlink it finds in either the parent or quoted post (though it's not catching all the links yet, still working on it!)."
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"id": "019c0146-cb95-7aa6-b9b3-5025178a5c94",
"$type": "pub.leaflet.blocks.page"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 2,
"facets": [],
"plaintext": "BIG profile pictures"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 28,
"byteStart": 14
},
"features": [
{
"uri": "https://bsky.app/profile/elevatorselfies.bsky.social",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "I like seeing people's faces. Not everybody has a good take, but everybody has a good face. Pretty much all feed-based social media makes profile pictures so small you really can't see them. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 15,
"byteStart": 4
},
"features": [
{
"uri": "https://jklb.social",
"$type": "pub.leaflet.richtext.facet#link"
}
]
},
{
"index": {
"byteEnd": 59,
"byteStart": 53
},
"features": [
{
"$type": "pub.leaflet.richtext.facet#italic"
}
]
}
],
"plaintext": "Use jklb.social and you'll find yourself saying, \"Oh that's what you look like\" over and over again. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.image",
"image": {
"$type": "blob",
"ref": {
"$link": "bafkreie7okgwewaxeh7p632f7ndjlho6qzemotrraipd2lubw7rhkmmqre"
},
"mimeType": "image/png",
"size": 1636667
},
"aspectRatio": {
"width": 1714,
"height": 1072
}
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 137,
"byteStart": 126
},
"features": [
{
"uri": "https://jklb.social",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "And it's more than just faces, too! Obviously there's many good reasons to not want your mug everywhere online. In dogfooding jklb.social I've been delighted to see how many non-face profile pictures have cool art or interesting details the bigger view highlights. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 2,
"facets": [],
"plaintext": "like chorus"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.image",
"image": {
"$type": "blob",
"ref": {
"$link": "bafkreie2wisp2qbiqndmx6butwyyi3rnlmmyxz76mx2wgcqstashf3e3uy"
},
"mimeType": "image/png",
"size": 966600
},
"aspectRatio": {
"width": 1586,
"height": 1294
}
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "The like chorus is the last ~15 or so people to interact with your account. I display however many fit around the border. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "Social media makes me sad. Bluesky makes me sad. I often feel unseen/unliked/interpret lack of response as judgment. I often feel inadequate socially (and technically!) when compared to others by the metrics the UI shows me. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 9,
"byteStart": 5
},
"features": [
{
"$type": "pub.leaflet.richtext.facet#italic"
}
]
}
],
"plaintext": "I am very afraid of negative engagement. I see real arguments/meanness on bluesky, and then when I post I imagine the arguments that could be made with my take/I imagine people being mean to me. So I'm making prominent the faces of the people who have seen me. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "I also want to maybe try to feature the posts of these people in the feed down the line. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 2,
"facets": [],
"plaintext": "credible exit"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 21,
"byteStart": 19
},
"features": [
{
"$type": "pub.leaflet.richtext.facet#italic"
}
]
}
],
"plaintext": "With credible exit on, after X posts you get cut off and prompted to share (if you wish) with bluesky 1: the best thing you saw (will be quote-posted (UI is TERRIBLE for this right now, just a drop-down menu of the posts you liked. I dunno how to do it gracefully)), 2: what you're going to do now that you've checked social media, and 3: a photo. All are optional."
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "What you share will look like this:"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.image",
"image": {
"$type": "blob",
"ref": {
"$link": "bafkreie52mfku6dp2xvbetbggz7wzag3n5v45stjmc3qpdb7pmlny7gnta"
},
"mimeType": "image/png",
"size": 746769
},
"aspectRatio": {
"width": 908,
"height": 1356
}
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": ""
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 1,
"facets": [],
"plaintext": "jklb.social is not..."
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.unorderedList",
"children": [
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "a bsky.app replacement attempting feature parity"
},
"children": [
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "for instance, I have no plans to add DMs. There currently is no search or profile view and I won't do anything like that unless I think I have an idea worth trying on how to do it"
},
"children": []
}
]
},
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "bug-free or completely stable."
},
"children": []
},
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "mobile friendly. No mobile!"
},
"children": []
},
{
"$type": "pub.leaflet.blocks.unorderedList#listItem",
"content": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 30,
"byteStart": 25
},
"features": [
{
"uri": "https://ghuntley.com/ralph/",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "human-written code. I am Ralphing this with Claude code. "
},
"children": []
}
]
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": ""
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 1,
"facets": [],
"plaintext": "The dream:"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 11,
"byteStart": 0
},
"features": [
{
"uri": "https://jklb.social/",
"$type": "pub.leaflet.richtext.facet#link"
}
]
},
{
"index": {
"byteEnd": 299,
"byteStart": 295
},
"features": [
{
"$type": "pub.leaflet.richtext.facet#italic"
}
]
}
],
"plaintext": "jklb.social turns bluesky into a wordle-like habit. Lots of people try it and say \"Woah! Not for me, thanks!\"(but the experience makes them reflect on the nature of micro-blogging). A few people try it, like it and use it semi-regularly to be on social media less but be more sociable when they are there."
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "Deliver 80% of the bluesky experience in a minimal UI. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "Increase friction to forever-lurking, decrease friction to sociability. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "Put the fun in atproto. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 46,
"byteStart": 43
},
"features": [
{
"$type": "pub.leaflet.richtext.facet#italic"
}
]
}
],
"plaintext": "There's one easter egg so far. In the very meh thread view. "
}
}
]
},
{
"id": "019c0146-cb95-7aa6-b9b3-5025178a5c94",
"$type": "pub.leaflet.pages.linearDocument",
"blocks": [
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 1,
"facets": [],
"plaintext": "More on keybindings"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": ""
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 54,
"byteStart": 29
},
"features": [
{
"uri": "https://www.herocast.xyz/",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "Keybindings were inspired by https://www.herocast.xyz/. Herocast is an awesome farcaster client, and using it I liked how different it felt than scrolling. "
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [],
"plaintext": "Next time you're scrolling...notice where you keep your cursor. I started noticing mine tends to live in here:"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.header",
"level": 2,
"facets": [],
"plaintext": "\"like corridor\" where my cursor hangs out while scrolling"
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.image",
"image": {
"$type": "blob",
"ref": {
"$link": "bafkreihz4qcg7jishjbvjiva7k4avs2badjnbqxtpnv7vfgayjuo5fd3oa"
},
"mimeType": "image/png",
"size": 515850
},
"aspectRatio": {
"width": 1222,
"height": 1480
}
}
},
{
"$type": "pub.leaflet.pages.linearDocument#block",
"block": {
"$type": "pub.leaflet.blocks.text",
"facets": [
{
"index": {
"byteEnd": 22,
"byteStart": 11
},
"features": [
{
"uri": "https://jklb.social",
"$type": "pub.leaflet.richtext.facet#link"
}
]
}
],
"plaintext": "If you try jklb.social see if liking being literally easier makes you give more out. Likes are free and might make a someone feel seen. "
}
}
]
}
]
},
"coverImage": {
"$type": "blob",
"ref": {
"$link": "bafkreicxdxvrz2joxkq3rvz27e2yuyn6czdpozhfhecn7otozh4chbbha4"
},
"mimeType": "image/png",
"size": 969171
},
"bskyPostRef": {
"cid": "bafyreifi3dr23u52loclxnwgd6l6dieqbdw2kxpwfijaan7jir3z23ljem",
"uri": "at://did:plc:aurnkk6uy6axy66uqaq6dqy6/app.bsky.feed.post/3mdgq5bzr7s2d",
"commit": {
"cid": "bafyreihgszrqeukg4a2lsbybw6l43ikbfsf4niwcavpbyz5cij3yd2ohcq",
"rev": "3mdgq5c4v2b2f"
},
"validationStatus": "valid"
},
"description": "the only bluesky client with U2's \"Songs of Innocence\" included in every build",
"publishedAt": "2026-01-27T21:44:07.797Z"
}