Bitsocial is meant to grow into thousands of apps, tools, and services built by anyone, not approved by gatekeepers. If you’re a dev, submit your own app.
Board administration tooling for custom 5chan communities.
5chan Board Manager connects to Bitsocial CLI to help administrators create, configure, and moderate custom imageboard boards. It is the utility layer for board owners who want operational control.
Command-line control for nodes, communities, and automation workflows.
Bitsocial CLI is the official terminal interface for the protocol. Use it to manage nodes, publish content, start a WebSocket JSON-RPC server for programmatic control and code automation, automate admin flows, and work directly against Bitsocial primitives without a GUI client.
Telegram bot that posts compact GitHub activity for Bitsocial repositories.
Bitsocial GitHub Alerts forwards pushes, releases, issues, and pull requests from GitHub into any Telegram chat, group, or forum topic. The Bitsocial team runs it for its own repositories, and the container image is public so anyone can self-host it for theirs.
Self-hostable crawler, search index, and web UI for Bitsocial communities.
Bitsocial Indexer connects to a Bitsocial CLI daemon over RPC, indexes the communities an operator configures into a local SQLite database, and serves them through a REST and full-text search API with an optional server-rendered web UI. It ships empty: the operator decides what gets indexed.
Link-preview and redirect server that renders share cards for Bitsocial posts.
Bitsocial Previewer renders OpenGraph and Twitter cards when a post link is shared on other platforms, then redirects real browsers into the app. One instance is multi-tenant by hostname, so a single deployment and TLS setup covers every client and mirror domain.
Public seeder for Bitsocial communities, packaged for Docker and npm.
Bitsocial Seeder pins community first pages, post-update CIDs, and pubsub topic routing through a Bitsocial daemon. It reuses an already-running local daemon when one is reachable or starts the bundled bitsocial-cli daemon automatically, and ships as both a Docker image for unattended VPS deployments and an npm package for Node-first operators.
Feed bots that relay new Bitsocial posts into Telegram channels or groups.
Bitsocial Telegram Bots monitor client community lists and forward new posts into Telegram destinations with inline links back to Bitsocial clients. The active bot covers 5chan feeds today, with the repo structured to add more client-specific bots over time.
Offline-first editor for a community's anti-spam challenge settings.
Challenge Composer visualizes and edits the challenges array of a Bitsocial community's settings, then exports a ready-to-run CLI script. It ships as a single self-contained HTML file that makes no outward requests at runtime, so it can be opened straight from disk or a USB stick.
Fallback pubsub relay and routing provider for Bitsocial operators.
Pubsub Provider runs a bundled Kubo node with Bitsocial-compatible pubsub, gateway, name-provider, and delegated HTTP routing endpoints. It is useful as a fallback path for clients that disable pure browser P2P, and it defaults to swarm port 4002 so it can run beside bitsocial-seeder on the same host.
{"locale":"en","dir":"ltr","url":{"pathname":"/projects","search":"?category=tools","hash":""},"i18n":{"resources":{"hero":{"tagline":"<openSource>Bitsocial is an open-source</openSource> <p2p>peer-to-peer network</p2p> <socialApps>for social apps</socialApps>, <noServers>with no servers</noServers>, <noBans>no global bans</noBans>, <crypto>where users and communities are cryptographic property.</crypto>","readDocs":"Read Docs","exploreApps":"Explore Apps","developersCta":"Developers: build Bitsocial apps today","taglineSegments":{"openSource":"Bitsocial is an open-source","p2p":"peer-to-peer network","socialApps":"for social apps","noServers":"with no servers","noBans":"no global bans","crypto":"where users and communities are cryptographic property."}},"nav":{"apps":"Apps","blog":"Blog","docs":"Docs","status":"Stats","language":"Language","theme":"Theme","newsletter":"Newsletter","backToTop":"Back to top","goToBottom":"Go to bottom","backToPrevious":"Back to where you were","faq":"FAQ"},"languageSelector":{"title":"Select Language","searchPlaceholder":"Search languages...","noResults":"No languages match your search."},"mailingList":{"title":"Stay in the Loop","description":"Get notified about protocol milestones, new Bitsocial apps, and ecosystem updates. Low frequency, high signal.","placeholder":"you@example.com","inputLabel":"Email address","subscribe":"Subscribe","subscribing":"Subscribing…","success":"You’re on the list!","confirmationSent":"Check your email to confirm your subscription.","privacy":"No spam, ever. Unsubscribe anytime.","error":"Subscription failed. Please try again.","unavailable":"Newsletter signup is temporarily unavailable."},"footer":{"tagline":"Open Source P2P Network for Social Apps","bottomTagline":"Decentralize All Social Media","explore":"Explore","apps":"Apps","docs":"Docs","status":"Stats","resources":"Resources","blog":"Blog","about":"About Us","newsletter":"Newsletter","community":"Community","github":"GitHub","twitter":"Twitter","telegram":"Telegram","contribute":"Improve this page","privacy":"Privacy"},"problem":{"sectionLabel":"The Problem","title":"The social layer of the web has an owner.","supporting":"It's not a conspiracy, it's an architecture. Every mainstream social platform is a private database on private servers, and livelihoods, businesses, and communities now live on it, so decisions made inside a handful of companies reach directly into the physical world. That design has three consequences, no matter who runs it.","items":{"rented-identity":{"title":"Your identity is rented.","description":"Your account, your audience, and your community exist because a company's database says so. Nothing you built there is yours.","answer":"Cryptographic property"},"single-owner":{"title":"One owner is one point of failure.","description":"A company can be pressured, sold, shut down, or simply change its mind. Everything downstream of it changes with it.","answer":"No servers"},"one-rulebook":{"title":"One rulebook governs everyone.","description":"A single ruleset, written privately and applied globally, decides what billions of people can say to each other.","answer":"No global bans"}},"answerLabel":"Bitsocial's solution","carouselLabel":"The three consequences of a privately owned social layer","quote":"What's the point of creating a company or product to make the world better, if centralized social media apps can just ban you, and then you can no longer reach your customers?","quoteAttribution":"— Esteban Abaroa, Bitsocial founder"},"features":{"sectionLabel":"Core Features","title":"A social layer nobody owns.","supporting":"An ever-expanding universe of social media apps, all using the same underlying decentralized social network — one that no company owns, and none can take away from you.","items":{"open-source":{"description":"Bitsocial is <strong>free and open source</strong> software: the protocol and clients are public, forkable, and open to outside contributions. <strong>Anyone can inspect the code</strong>, ship improvements, or build a compatible app without asking permission from a company.","cta":"Browse source code"},"peer-to-peer":{"description":"Bitsocial is <strong>neither federated nor on-chain</strong>. Each community is a peer-to-peer swarm using <ipfs>IPFS</ipfs>, <strong>closer to BitTorrent</strong> than a hosted website: users seed effortlessly, nodes run on cheap hardware, and each community is fully independent and sovereign. A browser tab can join that swarm as a peer, so the web app is not a client of someone else's server.","cta":"Learn how p2p works"},"social-apps":{"description":"Anyone can build a Bitsocial app with its own interface, discovery model, or defaults. Apps compete on product quality instead of locking users into a private database, because compatible clients can <strong>share the same communities, identities, and network</strong>.","cta":"Explore apps"},"no-servers":{"description":"Bitsocial does not require every community to rent a datacenter box, buy a domain, or manage SSL just to stay online. A community node can run from home on consumer hardware, and <strong>there is no single company-run backend that can take the whole network down</strong>.","cta":"Check network stats"},"no-global-bans":{"description":"Moderation still exists, but it stays local. Community owners set rules for their own spaces and apps can choose what they index or show, yet <strong>there is no protocol-level super-admin</strong> who can erase a profile or seize a community from the network itself.","cta":"Read moderation notes"},"cryptographic-property":{"description":"Profiles and communities are controlled by private keys, not by revocable platform accounts. You can delegate hosting without giving away ownership, so <strong>your identity and community behave more like wallet-controlled property</strong> than a username rented from a company.","cta":"Read ownership notes"}}},"browserPeer":{"sectionLabel":"Browser P2P","title":"The browser is the breakthrough.","supporting":"Open a Bitsocial web app in a normal tab and it joins the network itself, fetching posts from other peers and publishing your own. That's the hard part — and why every other decentralized social network still keeps a server in the middle.","cards":{"node":{"title":"The tab runs a node","description":"The page boots a <helia>Helia</helia> node and speaks the same protocol as desktop and CLI nodes, reaching peers over the same kind of encrypted connection any website uses. Publishing from a browser became reliable in <gossipsub>2026</gossipsub>, once the last upstream fix landed."},"unstoppable":{"title":"Nothing to shut down","description":"The page is only a client: any copy of it, on any domain or as a desktop build, reaches the same network. <strong>Your identity and your community are keys you hold</strong>, not rows in a company's database, so there is no account to lose and no host to seize."}},"liveCta":"Watch it happen on the blog","docsCta":"How browser P2P works"},"sanctuary":{"sectionLabel":"Decentralized","headline":"Not a buzzword.","supporting":"No servers to rent. No domains to buy. No chains to sync. A Bitsocial node runs on a Raspberry Pi. And each community can enforce its own anti-spam challenge: captchas, reputation, SMS, payments, tokens, IP checks, or anything else that can be coded.","approaches":{"federated":{"label":"Server-based","subtitle":"Bluesky, Mastodon, Lemmy"},"blockchain":{"label":"Blockchain-based","subtitle":"Farcaster, Lens, DeSo, Steemit"},"bitsocial":{"label":"Bitsocial","subtitle":"Pure P2P with arbitrary anti-spam challenges"}},"rows":{"selfHostingCost":{"label":"Self-hosting cost","federated":"Server + domain + SSL","blockchain":"Expensive node, hub, or RPC","bitsocial":"Extremely cheap, runs on Raspberry Pi"},"whoKeepsOnline":{"label":"Who keeps it online","federated":"Server operators and shared indexers","blockchain":"Chain, hub, or RPC infrastructure","bitsocial":"Community owners + helper seeders"},"scalingModel":{"label":"Scaling model","federated":"Bigger servers and indexers, higher bills","blockchain":"More state, heavier infra","bitsocial":"More peers, more bandwidth"},"customAntiSpam":{"label":"Custom anti-spam logic","federated":"Not built into the protocol","blockchain":"Tied to chains, hubs, or fees","bitsocial":"Built in: challenge can be anything"},"takedownChokePoints":{"label":"Takedown choke points","federated":"Host, registrar, SSL, DDoS provider","blockchain":"Validators, hubs, RPCs","bitsocial":"No single choke point"}},"quote":"Your community literally cannot be banned or blocked by anyone, even a government. We solve that problem.","quoteAttribution":"— Esteban Abaroa, Bitsocial founder","deepComparison":{"prompt":"See deep comparison with:","go":"Go","modalEyebrow":"Deep comparison","modalTitle":"{{service}} vs Bitsocial","close":"Close deep comparison","tableCaption":"Concise sourced comparison table for {{service}} vs Bitsocial","table":{"topic":"Topic","bitsocial":"Bitsocial"},"services":{"nostr":"Nostr","bluesky":"Bluesky","mastodon":"ActivityPub / Fediverse","farcaster":"Farcaster","lens":"Lens","deso":"DeSo","steemit":"Steemit"},"rows":{"identity":{"label":"Human names","nostr":"Your account is a long public key; readable names need extra providers.","bluesky":"Readable handles are DNS names; the DID document points apps to the account's current server.","mastodon":"Your readable handle includes a server, so moving servers can change your address.","farcaster":"Default usernames are free offchain names that Farcaster issues and can revoke.","lens":"Lens names follow wallet, app, and chain infrastructure.","deso":"A DeSo profile follows a public key, but the social history lives on the DeSo chain.","steemit":"A Steem username is readable, but tied to Steem's account system.","bitsocial":"Keys stay yours, and .bso names can point to people or communities.","detail":"Nostr's base identity is a public key, which is portable but hard to remember. Readable names are useful, but they are added through separate conventions and providers. Bitsocial also uses public keys while adding .bso names, so a person or community can have a readable identity without a central account provider.","detailBluesky":"Bluesky has a real improvement over raw public keys: DIDs plus readable handles. The tradeoff is that handles are DNS names and the DID document still advertises the user's current PDS. Bitsocial keeps cryptographic ownership while adding .bso names for people and communities.","detailMastodon":"Mastodon handles are readable because WebFinger turns @user@domain into an ActivityPub actor URI. The domain matters: the same username on another server is a different account. Mastodon can redirect or move followers to a new account, but posts and media do not move. Bitsocial keeps cryptographic ownership and adds .bso names for people and communities.","detailFarcaster":"Farcaster IDs, custody and recovery addresses, app keys, and storage are registered onchain on OP Mainnet, which gives accounts cryptographic portability. Usernames are different: default fnames are free offchain names issued by Farcaster's name server, which can revoke them; only .eth names are onchain, on Ethereum. Bitsocial keeps cryptographic ownership while adding .bso names for people and communities.","detailLens":"Lens accounts live on Lens Chain, and V3 treats every EVM account as a profile with usernames and social primitives available through apps. That is much friendlier than raw public keys, but the readable identity still follows wallet, chain, app, and indexer infrastructure. Bitsocial keeps cryptographic ownership while adding .bso names for people and communities.","detailDeso":"DeSo identity is controlled by a public key, and apps can sign actions through DeSo Identity. That gives portability across DeSo apps, but the human profile and social history are still DeSo-chain objects that every serious node or indexer has to carry. Bitsocial keeps cryptographic ownership while adding .bso names for people and communities.","detailSteemit":"Steem accounts are readable names with owner, active, and posting permission levels plus a separate memo key. That is practical for a blockchain app, but the identity is still a Steem account rather than a portable person or community name. Bitsocial keeps cryptographic ownership while adding .bso names for people and communities."},"dataLayer":{"label":"Data hosting","nostr":"Relays keep posts online and deliver them to readers.","bluesky":"Public posts live on a Personal Data Server; relays rebroadcast them and AppViews index them.","mastodon":"Posts are hosted by an instance, then federated as ActivityPub objects.","farcaster":"Identity is onchain, while casts and other messages are stored on Snapchain.","lens":"Accounts, graphs, feeds, and rules are contracts; post content is off-chain JSON.","deso":"Profiles, posts, follows, and reactions are DeSo transactions; media is off-chain.","steemit":"Posts, votes, rewards, and account actions are written to the Steem blockchain.","bitsocial":"Users can fetch and share posts directly with each other.","detail":"Nostr posts are portable because users control their keys, but a server still has to keep the posts online. In normal Nostr use, that job belongs to relays. Bitsocial separates finding people from carrying the data: small lookup services can help find peers, then users fetch and share the content directly.","detailBluesky":"Bluesky's repo design is one of its strongest parts: public records are signed, portable, and exportable. But the authoritative host is still the current PDS, and the normal app experience depends on relays and AppViews. Bitsocial starts with peer-to-peer content sharing instead of server-hosted account repos.","detailMastodon":"ActivityPub actors live on servers with inboxes and outboxes. In Mastodon, ActivityPub Notes and Questions become statuses and polls that the instance stores, serves, and delivers to other servers. That is much more open than one central platform, but the normal data host is still an always-online server. Bitsocial starts with peer-to-peer content sharing instead.","detailFarcaster":"Farcaster keeps account identity and storage payments on OP Mainnet, while casts, follows, reactions, and profile updates are signed messages that Snapchain validators order into blocks and every full node replicates. That keeps social actions off Ethereum, but the data layer is still a validator-run server network. Bitsocial starts with peer-to-peer content sharing instead of chain-ordered social state.","detailLens":"Lens V3 runs on Lens Chain, with accounts, usernames, graphs, groups, feeds, and rules as smart contracts. A post's text and media are not onchain: they live in a JSON file at a URI, usually on Grove, Lens's storage service, and reactions and bookmarks are held by the Lens API that apps read through. Mask Network has stewarded Lens since January 2026. Bitsocial starts with peer-to-peer content sharing instead of chain contracts plus hosted storage and APIs.","detailDeso":"DeSo's strongest claim is that identities, profiles, posts, comments, likes, follows, and related social data are stored directly on its purpose-built blockchain; images and video are hosted off-chain. That removes a single app database, but each social action becomes transaction-shaped data that nodes and indexers have to keep carrying. Bitsocial starts with peer-to-peer content sharing instead of writing every social action to a global ledger.","detailSteemit":"Steemit runs on Steem, so posts, comments, votes, rewards, and account operations are blockchain actions served through Steem nodes and front ends. That makes the record public and portable across Steem apps, but the normal data layer is still the Steem chain plus API nodes. Bitsocial starts with peer-to-peer content sharing instead."},"communityModel":{"label":"Who accepts posts?","nostr":"A NIP-29 group lives on one relay, which accepts or rejects its posts.","bluesky":"Community-like spaces are built through feeds, lexicons, or app features, not P2P objects with their own gate.","mastodon":"A Lemmy community can screen posts, but it lives on one instance under that instance's admin.","farcaster":"Channels are app/client layers, not communities that accept posts themselves.","lens":"Groups and feeds can have rules, but acceptance runs through Lens infrastructure.","deso":"A node can curate a feed, but communities are views over global transaction data.","steemit":"Communities can organize posts, but Steem accounts and chain rules accept them.","bitsocial":"The community is the thing you post to; it accepts or rejects posts itself.","detail":"Nostr's recommended groups (NIP-29) are hosted by a relay that enforces the group's membership and posting rules before accepting a post. That is close to a Bitsocial community, but the relay software defines what group roles can do, and the group stays tied to that relay unless another relay agrees to take it over. In Bitsocial, the community is its own keypair: its node checks the posting gate and publishes the accepted state, wherever the owner runs it.","detailBluesky":"Bluesky can build groups, forums, and community feeds through lexicons, AppViews, and feed generators. That still leaves the community dependent on services that index and interpret records. Bitsocial treats the community as the addressed object: its node validates posts and publishes the accepted state.","detailMastodon":"ActivityPub lets different apps interoperate, but the server software decides what a community means. Mastodon is mostly profile and timeline based. Lemmy communities are ActivityPub groups: users post to the community, which can check each post, up to moderator approval, before announcing it to followers (FEP-1b12). That is structurally close to Bitsocial. The difference is where the community lives: it is created on one instance, its address carries that instance's domain, and the instance admin can censor it. In Bitsocial, the community is its own keypair, so its owner can run its node anywhere and no server admin sits above it.","detailFarcaster":"Farcaster's base protocol stores user messages and relationships. Channels and community-like spaces are client or app conventions layered on top, so the posting gate depends on the app and indexing path users choose. Bitsocial treats the community as the addressed object: its node validates posts and publishes the accepted state.","detailLens":"Lens is stronger than many social protocols here: V3 includes groups, feeds, namespaces, and rules that can restrict interactions. The tradeoff is that acceptance still runs through Lens chain/protocol primitives, apps, and indexers. Bitsocial treats the community as the addressed object: its node validates posts and publishes the accepted state.","detailDeso":"DeSo nodes can create their own feeds over the shared firehose, which helps discovery and curation. But the community is still a curated view over global chain transactions, not a P2P object that owns its own acceptance gate before new posts enter. Bitsocial treats the community as the addressed object: its node validates posts and publishes the accepted state.","detailSteemit":"Steem communities can organize posts and mute content through community operations, and front ends can choose what to show. The underlying post is still accepted as a Steem account and chain operation, not by a P2P community object with its own gate. Bitsocial treats the community as the addressed object: its node validates posts and publishes the accepted state."},"moderation":{"label":"Censorship points","nostr":"A relay ban is survivable, but reach depends on which relays clients read.","bluesky":"The account host, relay, or AppView can block the normal path to your audience.","mastodon":"Instance admins can limit local accounts or block whole remote servers.","farcaster":"Apps and channels shape reach, and a small permissioned validator set orders every message.","lens":"Apps can filter, contracts can enforce rules, and interfaces still decide what users see.","deso":"The chain keeps public data; node operators pay to index and filter what users see.","steemit":"The chain keeps the record, but front ends, votes, witnesses, and communities shape reach.","bitsocial":"A community can stay reachable while peers keep sharing it.","detail":"A Nostr key survives a relay ban: the author can publish to other relays and list them as write relays (NIP-65), and clients that follow that list fetch the posts from there. Reach still depends on relays accepting the posts and on the clients, search services, and group relays people actually use. Bitsocial removes the relay as the center of power: users can keep sharing a community through different discovery paths as long as peers keep it online.","detailBluesky":"Bluesky separates account hosting, relay distribution, and AppView indexing. That helps portability, but it also creates several visibility gates that ordinary users rarely change. A PDS can refuse service, relays can stop carrying data, and AppViews can hide or ignore records. Bitsocial keeps reach closer to the community and its peers.","detailMastodon":"Mastodon moderation is local to each server: one admin cannot delete a remote account globally, but they can hide, limit, suspend, or domain-block what their own users see. An account's reach therefore depends on which servers still federate with its instance. Bitsocial keeps reach closer to the community and the peers still sharing it.","detailFarcaster":"Farcaster messages are valid if they satisfy protocol rules, but what users actually see is shaped by clients, APIs, channels, indexers, and moderation systems around the protocol. Underneath, Snapchain's validator set is permissioned: its whitepaper says censorship becomes hard with about ten globally distributed validators, and in October 2026 it had fewer, most of them run by Neynar. Bitsocial keeps reach closer to the community and the peers still sharing it.","detailLens":"Lens can enforce rules in protocol primitives, and each interface can also apply its own terms, filters, and ranking. That gives flexibility, but users still depend on apps, indexers, RPCs, and protocol governance for visibility. Bitsocial keeps reach closer to the community and the peers still sharing it.","detailDeso":"DeSo's public chain can keep content from disappearing from every node at once, but node operators still need to run and index the growing ledger before deciding what to expose, hide, rank, or make compliant. Bitsocial keeps reach closer to the community and the peers still sharing it.","detailSteemit":"Steem makes the chain record hard to erase, but front ends, witnesses, community moderators, downvotes, reputation, and reward rules shape what people find and trust. Bitsocial keeps reach closer to the community and the peers still sharing it."},"contentDiscovery":{"label":"Finding content","nostr":"Discovery often follows the relays and search services with the most data.","bluesky":"Discovery depends on AppViews, search indexes, feeds, and client defaults.","mastodon":"Search and timelines depend on what your instance has seen, cached, and chosen to show.","farcaster":"Discovery depends on clients, channels, APIs, and indexers built over Snapchain data.","lens":"Discovery depends on Lens apps, APIs, indexers, graphs, feeds, and app defaults.","deso":"Discovery depends on nodes and feeds that can afford to index the growing chain.","steemit":"Discovery depends on front-end feeds, tags, communities, rewards, and ranking.","bitsocial":"Discovery finds peers; it does not become the place that owns the content.","detail":"Nostr discovery works best when popular relays, search relays, and apps already have the data. That gives the best-connected services extra power over what people find. Bitsocial discovery only helps find peers. It does not need to host the content, own the community, or become the place everyone must trust.","detailBluesky":"Bluesky's own architecture puts feeds, search, and aggregate views in AppViews and related services. That makes discovery powerful, but visibility follows whichever aggregators the app uses. Bitsocial discovery services only return peer addresses. They do not need to host the content, own the community, or decide what everyone sees.","detailMastodon":"ActivityPub delivers activities to actor inboxes and shared inboxes, so discovery naturally depends on what servers receive, cache, index, and choose to show. Mastodon users can also filter users, keywords, and whole domains. Bitsocial discovery services only return peer addresses; they do not need to host content or decide what everyone sees.","detailFarcaster":"Farcaster discovery usually happens through clients, channels, recommendation systems, APIs, and indexed Snapchain data. The protocol data can be open, but the practical discovery layer is still whichever app and indexer the user uses. Bitsocial discovery services only return peer addresses; they do not need to host content or decide what everyone sees.","detailLens":"Lens gives developers shared graphs, feeds, groups, APIs, and indexers, which is useful for building social apps. But discovery still follows the Lens app, API, indexer, feed, and graph choices users enter through. Bitsocial discovery services only return peer addresses; they do not need to host content or decide what everyone sees.","detailDeso":"DeSo nodes can expose different feeds over the same open chain data. That makes curation competitive, but discovery still follows the node or feed view that can keep indexing and serving the growing transaction history. Bitsocial discovery services only return peer addresses; they do not need to host content or decide what everyone sees.","detailSteemit":"Steemit discovery is driven by front-end feeds, tags, communities, rewards, votes, and ranking. Those mechanisms are useful, but they make visibility depend on Steem-specific economics and interfaces. Bitsocial discovery services only return peer addresses; they do not need to host content or decide what everyone sees."},"replies":{"label":"Spam replies","nostr":"Relays can reject spam, but outside NIP-29 groups the gate belongs to each relay, not the thread.","bluesky":"Authors can limit who replies and hide replies; servers and labels handle the rest.","mastodon":"Servers gate signups; rate limits, reports, and moderators handle the rest.","farcaster":"Valid signed casts enter Snapchain; apps moderate visibility after the fact.","lens":"Replies are protocol interactions; app and rule choices determine visibility.","deso":"A spam comment can become an onchain transaction before filters hide it.","steemit":"Chain-wide stake limits apply before posting; communities can only mute afterwards.","bitsocial":"A community can challenge posters first and reject spam before it appears.","detail":"Nostr relays can reject an event before storing it, and a NIP-29 relay can limit a group's posts to members. Outside NIP-29 groups, though, the thread has no gate of its own: a reply rejected by one relay can be published to any relay that accepts it, and readers see whatever their clients' relays carry. Bitsocial gives the community a front door: complete the challenge, or the reply is never accepted into the thread.","detailBluesky":"Bluesky uses server rate limits, moderation labels, and reply controls: authors can limit who may reply to a post and hide replies in their threads. Those tools are useful, but they are per-post or service-level defenses, and no community-level gate decides what a reply must pass before it is accepted. Bitsocial gives the community a front door: complete the challenge, or the reply is never accepted into the thread.","detailMastodon":"ActivityPub does not define an anti-spam mechanism. Mastodon and Lemmy servers gate signups with approval, invites, captchas, and email checks, then rely on rate limits, reports, blocks, filters, and domain moderation. Those tools stop spam at signup or handle it after it arrives. Bitsocial lets a community challenge a poster before the reply is accepted.","detailFarcaster":"A Farcaster reply is a signed message accepted when the FID, signer, and storage rules check out. Storage rent limits volume, but it is not a community-owned challenge before each reply. Bitsocial gives the community a front door: complete the challenge, or the reply is never accepted into the thread.","detailLens":"Lens can attach rules to feeds, groups, accounts, and posts, so it can block or restrict some interactions. That is useful, but it is still smart-contract and app rule execution, not a P2P community challenge chosen and run by the community node itself. Bitsocial gives the community a front door: complete the challenge, or the reply is never accepted into the thread.","detailDeso":"A DeSo comment is an onchain transaction. Nodes and moderation services can filter what they show, but junk can still become part of the shared ledger, adding cost and data that future nodes and indexers have to carry. Bitsocial gives the community a front door: complete the challenge, or the reply is never accepted into the thread.","detailSteemit":"Steem limits spam before posting with Resource Credits, which grow with staked STEEM, and with account-creation costs. Those gates are protocol-wide and stake-based, not chosen by each community; communities and votes can only mute or bury a comment after it enters the chain. Bitsocial gives the community a front door: complete the challenge, or the reply is never accepted into the thread."},"antiSpam":{"label":"Community rules","nostr":"Rules belong to relays; a NIP-29 group's rules run on its host relay.","bluesky":"The app can filter content, but the community cannot require its own challenge first.","mastodon":"Rules belong to the instance, the user, or a domain blocklist.","farcaster":"Storage rent raises spam cost, but community gates are app or channel policy.","lens":"Rules can be programmable, but the gate lives in Lens contracts and apps.","deso":"A fee applies to everyone; other rules filter chain data afterwards.","steemit":"Spam limits are chain-wide and stake-based; communities can only mute.","bitsocial":"Rules belong to the community, so accepted posts pass the same gate.","detail":"Each Nostr relay chooses its own write gate, such as proof of work, authentication, allowlists, payment, or rate limits, and NIP-29 relays also enforce group rules. Those gates belong to relay operators: a group can use only the roles and checks its host relay supports. Bitsocial lets each community choose the gate for posting, such as account age, reputation, captcha, whitelist, payment, or another challenge.","detailBluesky":"Bluesky moderation is built around labels, AppViews, and service rules. That can hide, rank, or limit content, but it is not the same as a community-owned pre-post gate. Bitsocial lets each community choose the gate for posting, such as account age, reputation, captcha, whitelist, payment, or another challenge.","detailMastodon":"Mastodon gives instance admins, moderators, and users many controls: filters, mutes, blocks, reports, server-wide limits, and suspensions. They are powerful federation controls, but they are not a portable community-owned pre-post gate. Bitsocial lets each community choose its posting challenge, so accepted posts pass the same rule before entering the thread.","detailFarcaster":"Farcaster's storage registry makes spam more costly and clients can filter or moderate channels, but the rule is not owned by each forum-style community as a pre-post gate. Bitsocial lets each community choose the gate for posting, such as account age, reputation, captcha, whitelist, payment, or another challenge.","detailLens":"Lens rules are powerful and programmable, but they live as protocol and app primitives on Lens Chain. For a forum-style community, that still means depending on the chain, app, and indexer path to enforce and display the rule. Bitsocial lets each community choose the gate for posting, such as account age, reputation, captcha, whitelist, payment, or another challenge.","detailDeso":"DeSo's network-wide spam cost is a fee on every action. Beyond that, moderation is intentionally open: every node can choose the subset of public chain data it exposes, and the docs describe outside labeling services that nodes could adopt. That filtering happens after a signed transaction has entered the shared chain. Bitsocial lets each community choose its posting challenge, so accepted posts pass the same rule before entering the thread.","detailSteemit":"Steem's pre-post limits are the same for everyone: Resource Credits from staked STEEM and the cost of creating an account. Communities can mute posts, and votes and reputation shape visibility, but a community cannot set its own posting gate. Bitsocial lets each community choose its posting challenge, so accepted posts pass the same rule before entering the thread."},"scalingEconomics":{"label":"Scaling costs","nostr":"High traffic pushes more server and bandwidth cost onto relays.","bluesky":"Relays are now cheap to run; growth mostly loads AppViews and feed services.","mastodon":"Growth pushes storage, federation, streaming, and moderation cost onto instances.","farcaster":"Growth pushes load onto Snapchain nodes, storage rent, APIs, and indexers.","lens":"Growth pushes load onto Lens Chain, storage, indexers, RPCs, and app backends.","deso":"Each social action is a transaction, so node and index costs keep climbing.","steemit":"Growth pushes more posts, votes, rewards, API load, and moderation work onto Steem infrastructure.","bitsocial":"More readers can also mean more people helping share the content.","detail":"In Nostr, relays are still the servers keeping posts online and sending them to readers. A popular post can be great for users while becoming expensive for relay operators. In Bitsocial, readers can also help distribute the content they read, so popularity can add capacity instead of only adding server cost.","detailBluesky":"ATProto deliberately uses servers for convenience and availability. Since the 2025 Sync v1.1 update, relays no longer archive every repository and fit on a small, inexpensive server. AppViews still index the whole network to serve timelines, threads, and search, and the official docs call hosting one resource intensive; custom feeds often consume the firehose too. Bitsocial uses routers only to find peers; readers can help carry the content.","detailMastodon":"A Mastodon server needs a domain, always-online hosting, email, database, Redis, background workers, streaming, and often object storage. Mastodon can scale horizontally, but that means operating more app servers, workers, databases, queues, and moderation capacity. Bitsocial uses routers only to find peers; readers can help carry the content they read.","detailFarcaster":"Farcaster avoids putting every social action on Ethereum, but every Snapchain full node keeps the whole network's data, and APIs and indexers serve a large public social graph on top. Popularity increases those operator costs. Bitsocial uses routers only to find peers; readers can help carry the content they read.","detailLens":"Lens is built for scalable SocialFi with Lens Chain, ZK infrastructure, storage, APIs, and indexers. That is more scalable than posting everything to a general L1, but growth still concentrates load in chain, RPC, indexing, storage, and app infrastructure. Bitsocial uses routers only to find peers; readers can help carry the content they read.","detailDeso":"DeSo optimizes a blockchain for social storage, but that means posts, comments, likes, follows, and other social actions become transactions. Its validator guide asks for at least 32 GB of RAM and 200 GB of disk, and the ledger grows with every social action, so popularity raises the hardware and indexing bar for operators. Bitsocial uses routers only to find peers; readers can help carry the content they read.","detailSteemit":"Steem offers fast blocks and resource-based free transactions, but scaling still means more chain history, more API node work, more witness infrastructure, and more front-end moderation and ranking load. Bitsocial uses routers only to find peers; readers can help carry the content they read."},"browserMobile":{"label":"First post","nostr":"A web client feels simple only while its relay choices work.","bluesky":"The easy path is a hosted account with that provider's limits and rules.","mastodon":"You post through the server account you chose.","farcaster":"First post usually starts through an app that manages app keys, storage, and node access.","lens":"First post usually starts through a Lens app, wallet, RPC, and indexer path.","deso":"Keys are made in the browser, but every post needs DESO for its fee.","steemit":"First post starts with Steem account keys and a Steem front end or API node.","bitsocial":"You can start with a local key, without making a server own your identity.","detail":"Nostr can feel easy when a good web client has good relays already configured. The hidden dependency remains: those relays must accept, store, and serve the activity. Bitsocial can create the user's key locally and let the app choose direct peer-to-peer or hosted access without making an account server own the identity.","detailBluesky":"Bluesky is easy when bsky.social or another PDS handles accounts, sessions, writes, and hosting. That convenience is server-based, and hosted services apply their own API limits and policies. Bitsocial can create the user's key locally and let the user post through direct P2P or optional hosted access without a platform account owning the identity.","detailMastodon":"Mastodon is easy once a user chooses an instance and creates an account. The server handles sessions, posts, media, federation, and rules. Self-hosting gives more control, but requires operating the stack. Bitsocial can create the user's key locally and let the user post through direct P2P or optional hosted access without a platform account owning the identity.","detailFarcaster":"Farcaster's user experience is easiest through a client that manages account setup, app keys, storage, and access to a Snapchain node or API provider. Running your own data path is possible, but not the first-post path for normal users. Bitsocial can create the user's key locally and let the user post through direct P2P or optional hosted access without routing the first post through app-managed signer and storage infrastructure.","detailLens":"Lens focuses on a web2-like flow with gasless or signless transactions and embedded wallet support. That improves onboarding, but a user is still entering through a Lens app, wallet, RPC, indexer, and chain path. Bitsocial can create the user's key locally and let the user post through direct P2P or optional hosted access without routing the first post through wallet, RPC, indexer, and chain infrastructure.","detailDeso":"DeSo Identity generates the user's keys in the browser, so the account is user-held from the start. The friction is cost: every action, including a first post, is a transaction that pays a fee in DESO, and new users usually get starter DESO from a node after phone verification. Bitsocial can create the user's key locally and let the user post through direct P2P or optional hosted access without a fee per post.","detailSteemit":"Steemit is straightforward once a user has a Steem account and posting key, but that account belongs to the Steem permission model and the post enters through a Steem front end or API node. Bitsocial can create the user's key locally and let the user post through direct P2P or optional hosted access without a platform account owning the identity."},"browserRuntime":{"label":"What your browser is","nostr":"A client of whichever relays it is configured to use.","bluesky":"A client of a PDS and an AppView.","mastodon":"A client of the server you signed up to.","farcaster":"A client of a Snapchain node or API provider.","lens":"A client of a Lens app, an RPC, and an indexer.","deso":"A client of a node API; keys stay in the browser.","steemit":"A client of a front end and an API node.","bitsocial":"A peer. It runs a node and fetches from other peers.","detail":"A Nostr web client holds websocket connections to relays, and those relays have to accept, store, and serve the content it reads and writes. Bitsocial browser clients run a Helia node in the page: they ask HTTP routers which peers hold a community, then fetch and publish over libp2p directly. Browser peers dial over secure WebSockets, and the gossipsub sequence-number fix in @libp2p/gossipsub 15.0.21 is what stopped posts published from a tab being discarded by the rest of the network.","detailBluesky":"A Bluesky web app talks to a PDS for writes and an AppView for reads, so the browser is always a client of services that hold and interpret the data. Bitsocial browser clients run a Helia node in the page: they ask HTTP routers which peers hold a community, then fetch and publish over libp2p directly. Browser peers dial over secure WebSockets, and the gossipsub sequence-number fix in @libp2p/gossipsub 15.0.21 is what stopped posts published from a tab being discarded by the rest of the network.","detailMastodon":"A Mastodon web client is a front end for the instance that stores your account, your posts, and your timeline. Bitsocial browser clients run a Helia node in the page: they ask HTTP routers which peers hold a community, then fetch and publish over libp2p directly. Browser peers dial over secure WebSockets, and the gossipsub sequence-number fix in @libp2p/gossipsub 15.0.21 is what stopped posts published from a tab being discarded by the rest of the network.","detailFarcaster":"A Farcaster web app reads and writes over HTTP through a Snapchain node or a managed provider such as Neynar. A browser can call a node's HTTP API directly, but it is always a client of a node, never a peer. Bitsocial browser clients run a Helia node in the page: they ask HTTP routers which peers hold a community, then fetch and publish over libp2p directly. Browser peers dial over secure WebSockets, and the gossipsub sequence-number fix in @libp2p/gossipsub 15.0.21 is what stopped posts published from a tab being discarded by the rest of the network.","detailLens":"A Lens app in the browser reads through indexers and writes through wallets, RPCs, and chain infrastructure. Bitsocial browser clients run a Helia node in the page: they ask HTTP routers which peers hold a community, then fetch and publish over libp2p directly. Browser peers dial over secure WebSockets, and the gossipsub sequence-number fix in @libp2p/gossipsub 15.0.21 is what stopped posts published from a tab being discarded by the rest of the network.","detailDeso":"A DeSo web app keeps the user's keys in the browser through DeSo Identity, then reads and submits transactions through a node's API, so the browser is a client of a node, not a peer. Bitsocial browser clients run a Helia node in the page: they ask HTTP routers which peers hold a community, then fetch and publish over libp2p directly. Browser peers dial over secure WebSockets, and the gossipsub sequence-number fix in @libp2p/gossipsub 15.0.21 is what stopped posts published from a tab being discarded by the rest of the network.","detailSteemit":"A Steem front end reads and writes through API nodes that carry the chain, so the browser is a client of whichever node it points at. Bitsocial browser clients run a Helia node in the page: they ask HTTP routers which peers hold a community, then fetch and publish over libp2p directly. Browser peers dial over secure WebSockets, and the gossipsub sequence-number fix in @libp2p/gossipsub 15.0.21 is what stopped posts published from a tab being discarded by the rest of the network."}},"expand":"Learn more","collapse":"Hide explanation","sourcesLabel":"Sources:"}},"arbitraryChallenges":{"sectionLabel":"Arbitrary Challenges","title":"Anti-spam? Future-proof.","supporting":"Each node runs its own <antiSpamChallenge>anti-spam challenge</antiSpamChallenge>, exchanged purely peer-to-peer with the user. When spam evolves, nodes adapt without changing the protocol.","diagram":{"user":"User","userHint":"publishes a post","node":"Bitsocial node","nodeHint":"runs the challenge","module":"Challenge module","moduleHint":"any code-backed test","request":"Request","challenge":"Challenge"},"optionsLabel":"Plug in any challenge","options":{"code":"any code","service":"AI-powered moderation","proof":"SMS OTP","next":"whatever comes next"},"quote":"The only Bitsocial innovation is solving spam and DDoS using arbitrary challenges like captchas over p2p.","quoteAttribution":"— Esteban Abaroa, Bitsocial founder"},"textOnlyProtocol":{"sectionLabel":"Text-only Protocol","title":"Freedom has moderation.","supporting":"The protocol carries only text, and it's not a hidden network. There's no global admin and no server to seize, so nobody can ban you from the whole network. Moderation just moves closer to you.","carouselLabel":"Common concerns, answered","communities":{"myth":"No bans means it's a free-for-all.","reality":"Communities moderate.","rules":"Each community sets and enforces its own rules, with its own anti-spam.","noGlobalAdmin":"There's just no single admin above the network who can ban you everywhere."},"apps":{"myth":"Open clients mean no accountability.","reality":"Apps moderate too.","blacklist":"Client developers can hide known-dangerous communities.","reputation":"Developers can run opt-in reputation and scoring services to increase safety."},"media":{"myth":"People will spread illegal content.","reality":"Not a hidden network.","notPrivate":"Peer-to-peer is not fully anonymous: like BitTorrent, your IP can be visible to peers.","textOnly":"Text-only protocol: images and videos are embedded from external websites."},"quote":"No one can force a community to censor you, and no one can force it not to. If a community has bad mods, you can use another one.","quoteAttribution":"— Esteban Abaroa, Bitsocial founder"},"adoptionThesis":{"sectionLabel":"Adoption Thesis","title":"Owning beats renting.","supporting":"It can't be censored, it never goes down, and you keep everything you earn. Here's who shows up — and why.","diagramLabel":"Adoption curve showing why each user cohort adopts Bitsocial.","curve":{"chasm":"the chasm","caption":"Monetization is what carries Bitsocial across the chasm, the gap where most networks die."},"pillars":{"adminless":{"label":"Nobody can deplatform you","description":"No protocol super-admin can erase a profile or seize a community."},"serverless":{"label":"It never goes down","description":"No company backend or instance can take the whole network down."},"economics":{"label":"You keep 100% of what you earn","description":"Run your own ads and keep every cent. Nobody can demonetize you."}},"cohorts":{"innovators":{"label":"Innovators","reason":"Testers, developers, and protocol builders prove the apps while earning first-mover visibility."},"earlyAdopters":{"label":"Early adopters","reason":"Communities arrive when adminless reach lets them keep their audience through the next ban."},"earlyMajority":{"label":"Early majority","reason":"Creators and operators follow when monetization makes a community worth building around."},"lateMajority":{"label":"Late majority","reason":"Mainstream users trust the network once resilience proves it works every day."},"laggards":{"label":"Laggards","reason":"They join once their people are already there and switching stops feeling risky."}}},"masterPlan":{"title":"A call to builders.","logoAlt":"Logo","easterEggAlt":"SpongeBob","epilogue":"The end state is not one app. It is a market of clients, nodes, services, and communities that can replace platform ownership with protocol competition.","epilogueFinal":"Social media finally finds its equilibrium: a fully decentralized, peer-to-peer social network that nobody owns; Bitsocial.","phases":{"phase1":{"phase":"Phase 1","status":"Ongoing","title":"Decentralize imageboards and forums","description":"<strong>Imageboards are the simplest form of social media to decentralize</strong>: anonymous posting, few default boards, and no profile graph. 5chan proves Bitsocial can replace centralized imageboards while removing global admins from the equation.","rpcDescription":"<forgeLink>Bitsocial Forge</forgeLink> will launch the first non-custodial RPC service for Bitsocial apps. <rpcLink>Forge RPC</rpcLink> will let users manage nodes remotely, while preserving the option to self-host or run competing RPC infrastructure. <strong>Users will be able to create and manage unstoppable p2p communities from mobile</strong>.","forumsDescription":"Forums add persistent identities, post history, and community management. Seedit is the first prototype Bitsocial app for <strong>Reddit-style discussion</strong>, and public RPC makes those always-on P2P communities practical from anywhere."},"phase2":{"phase":"Phase 2","title":"Launch Bitsocial Chain","description":"In order to decentralize all social media, Bitsocial apps will need killer features and strong network effects: <strong>unstoppable financial structures</strong>, decentralized Bitsocial domains (.bso), awards and tipping, common liquidity, and practical monetization. All of this will be powered by Bitsocial Chain, the proposed <strong>Ethereum L2 appchain economic layer</strong> for Bitsocial apps."},"phase3":{"phase":"Phase 3","title":"Decentralize Twitter/X","description":"Phase 3 should launch a focused, decentralized alternative to Twitter/X: posts, replies, reposts, follows, real-time public conversation, and communities that can pull network effects from every Bitsocial client. <strong>It should make text-first public conversation work exceptionally well</strong>, while keeping RPCs, feeds, instances, algorithms, ads, and ranking replaceable.","rpcNodes":"Through non-custodial RPC, each user can still act as a full p2p node without trusting the RPC with ownership. Anyone should be able to move to their own profile node on a low-spec machine, including a Raspberry Pi, whenever they want.","everythingApp":"Bitsocial Chain can bring durable naming, payments, tipping, awards, and monetization directly into public conversation."},"phase4":{"phase":"Phase 4","title":"Scale Bitsocial economies","description":"The next layer is ecosystem funding and infrastructure pluralism. <strong>Bitsocial Forge's RPC should not be the only successful RPC</strong>: many businesses, independent teams, anonymous operators, and community entities should build RPCs, media hosting, discovery, moderation, and other services on top of Bitsocial. Funding should push that decentralization forward, so developers and operators can compete to make the network faster, cheaper, more reliable, and harder to capture."},"phase5":{"phase":"Phase 5","title":"Decentralize all social media","description":"With the core apps, public RPCs, profile nodes, discovery, and monetization in place, <strong>Bitsocial can fund and build the long tail of social clients</strong>: blogging, crowdfunding, creator video and a credible <wetubeLink>YouTube alternative</wetubeLink>, niche experiments, and every format too early for the first four phases. Bitsocial Forge can build some of them, centralized clients can compete too, they do not all have to be FOSS, and decentralized community grants can fund as many developers as possible."}},"cta":{"learnMore":"Learn More","try5chan":"Try 5chan","trySeedit":"Try Seedit","buildYourOwn":"Build your own"},"subtitle":"Bitsocial wins by attracting as many builders as possible. Run your own unstoppable community, develop your own decentralized social app, or even launch your own business on top of Bitsocial. The tide rises with every builder.","sectionLabel":"Master Plan"},"faq":{"sectionLabel":"FAQ","title":"Common Questions","supporting":"Every section of this site answers one. Click a question to jump to it.","navLabel":"Questions answered on this page","answeredIn":"Answered in","ask":{"label":"Ask anything else","placeholder":"Ask anything else…","action":"Ask ChatGPT"},"items":{"problem":{"question":"What problem does Bitsocial solve?"},"core-features":{"question":"What is Bitsocial? How does it work?"},"browser-peer":{"question":"Why hasn't someone built this already?"},"decentralized":{"question":"Aren't there decentralized social networks already?"},"arbitrary-challenges":{"question":"With no servers, what stops spam?"},"text-only-protocol":{"question":"What about illegal content?"},"adoption-thesis":{"question":"Why would people switch to Bitsocial?"},"master-plan":{"question":"What's the plan from here? How can I help?"},"about":{"question":"Who is behind Bitsocial? How was it funded?"},"mailing-list":{"question":"How do I follow along?"}}},"blog":{"title":"Bitsocial Updates","subtitle":"This Bitsocial blog is run by the <devs>Bitsocial core devs</devs> and published as an unstoppable peer-to-peer feed, so you can read it on any Bitsocial app at <address>{{address}}</address>.","sectionLabel":"Official Blog","searchPlaceholder":"Search updates, releases, and tutorials…","clearSearch":"Clear search","clearFilters":"Clear filters","loadMore":"Load more","subscribeNewsletter":"Subscribe to newsletter","noPosts":"No posts yet","noPostsDescription":"The devs haven’t published any updates yet. The full feed is also browsable from any Bitsocial app at <address>{{address}}</address>.","noMatches":"No posts match these filters","noMatchesDescription":"Try a different search term or clear the active filters.","untitled":"Untitled post","anonymous":"Anonymous","p2p":{"button":"P2P status","eyebrow":"Pure P2P","title":"Bitsocial Blog P2P Status","description":"This blog page is itself a Bitsocial app. Posts are fetched directly from the peer-to-peer network through libp2p running in your browser — no servers, no central gateways.","close":"Close","refresh":"Refresh","loading":"Reading peers…","updated":"Updated {{time}}"},"replies_one":"{{count}} reply","replies_other":"{{count}} replies","replies":"{{count}} replies","time":{"justNow":"just now","minute_one":"{{count}} minute ago","minute_other":"{{count}} minutes ago","minute":"{{count}} minute ago","minutes":"{{count}} minutes ago","hour_one":"{{count}} hour ago","hour_other":"{{count}} hours ago","hour":"{{count}} hour ago","hours":"{{count}} hours ago","day_one":"{{count}} day ago","day_other":"{{count}} days ago","day":"{{count}} day ago","days":"{{count}} days ago","month_one":"{{count}} month ago","month_other":"{{count}} months ago","month":"{{count}} month ago","months":"{{count}} months ago","year_one":"{{count}} year ago","year_other":"{{count}} years ago","year":"{{count}} year ago","years":"{{count}} years ago"}},"apps":{"title":"Bitsocial Projects","subtitle":"Bitsocial is meant to grow into thousands of apps, tools, and services built by anyone, not approved by gatekeepers. If you’re a dev, submit your own app.","allCategories":"All","allProjects":"All Projects","allProjectsDescription":"The full Bitsocial ecosystem, from user-facing clients to protocol tools.","submitApp":"Submit App","submitAppDescription":"Have a Bitsocial app or tool? Submit it to the directory.","visit":"Visit","backToApps":"All Apps","linksAndMirrors":"Links & Mirrors","linksSectionDescription":"Launch the app, grab a build, or use a mirror without leaving the directory.","relatedApps":"Related Apps","sourceCode":"Source Code","notFound":"App not found","notFoundDescription":"The app you're looking for doesn't exist in the directory.","notFoundBack":"Back to Apps","emptyCategory":"Coming Soon","emptyCategoryDescription":"No apps in this category yet. Be the first to build one!","searchPlaceholder":"Search apps, tools, or tags","clearSearch":"Clear search","clearFilters":"Clear filters","devsLabel":"Devs:","filterLimitReached":"Filter limit reached","noMatches":"No projects match these filters","or":"or","noMatchesDescription":"Try a different search, platform, or category combination.","viewDetails":"Details","readyToUse":"Ready to use","experimental":"Experimental","mirrors":"Mirrors","webLinks":"Open on the web","mobileDownloads":"Mobile downloads","desktopDownloads":"Desktop downloads","extraDownloads":"Extra builds","sectionLabel":"Projects Directory","directoryLabel":"Project Categories","catalog":{"categories":{"apps":{"label":"Apps","description":"User-facing Bitsocial clients you can open or install today."},"identity":{"label":"Identity","description":"Credential and verification modules that gate who can post in Bitsocial communities."},"anti-spam":{"label":"Anti-Spam","description":"Filtering and moderation modules for Bitsocial communities."},"tools":{"label":"Tools","description":"CLI and admin utilities for running or extending Bitsocial apps."}},"platforms":{"web":{"label":"Web","shortLabel":"Web","description":"Browser-based apps and live web mirrors."},"android":{"label":"Android","shortLabel":"Android","description":"Direct APK downloads for Android devices."},"ios":{"label":"iOS","shortLabel":"iOS","description":"Native or installable apps for iPhone and iPad."},"desktop":{"label":"Desktop","shortLabel":"Desktop","description":"Windows, macOS, and Linux downloads."}},"tags":{"accessControl":"Access control","ai":"AI","automation":"Automation","boardAdmin":"Board admin","bots":"Bots","captcha":"Captcha","cli":"CLI","contracts":"Contracts","downloadable":"Downloadable","feeds":"Feeds","forums":"Forums","humanChecks":"Human checks","imageboard":"Imageboard","invites":"Invites","mirrors":"Mirrors","moderation":"Moderation","onChain":"On-chain","operator":"Operator","pubsubRelay":"Pubsub relay","riskScores":"Risk scores","telegram":"Telegram","verification":"Verification","antiRepost":"Anti-repost","referenceClient":"Reference client","search":"Search"},"linkLabels":{"androidApk":"Android APK","linux":"Linux","linuxArm":"Linux ARM","linuxX64":"Linux x64","macosApple":"macOS Apple Silicon","macosIntel":"macOS Intel","openWebApp":"Open web app","openWebsite":"Open website","windows":"Windows","windowsPortable":"Windows Portable","openTelegramBot":"Open Telegram bot"},"items":{"5chan":{"tagline":"Decentralized imageboards with direct web, APK, and desktop downloads.","description":"5chan is the first public Bitsocial client. It recreates the anonymous imageboard flow on a peer-to-peer network: boards, threads, image posting, community moderation, and multiple public mirrors without relying on a central server."},"seedit":{"tagline":"Forum-style Bitsocial client with web, APK, and desktop builds.","description":"Seedit brings Reddit-style discussion to Bitsocial with threads, identities, community management, and multiple distribution paths. It is the fastest way to try the forum side of the network from a browser, Android phone, or desktop app."},"spam-blocker":{"tagline":"Centralized risk scoring layer for filtering abusive publications.","description":"Spam Blocker evaluates publications and returns a risk score that communities can combine with their own moderation logic. Its hosted service also links signer keys first seen from the same IP, so a user who keeps generating new accounts to dodge a community ban or manufacture a conversation sees their risk score rise, while a few signers stay allowed for legitimate multi-device use."},"captcha-canvas-challenge":{"tagline":"Custom image captchas for communities that want human verification.","description":"Captcha Canvas Challenge generates visual captchas that communities can plug into their own publishing flow. It is a lightweight option for communities that want direct human checks without giving up self-hosted moderation."},"voucher-challenge":{"tagline":"Invite-style voucher codes for communities that prefer controlled growth.","description":"Voucher Challenge lets moderators distribute trusted voucher codes that unlock publishing without a global identity provider. It is a good fit for invite-driven communities, niche boards, and gradual rollouts."},"evm-contract-call":{"tagline":"On-chain gating for communities that want token or contract checks.","description":"EVM Contract Call verifies publications by calling an EVM contract before a post is accepted. It lets communities build token gates, staking rules, or other on-chain checks into their moderation flow."},"flags-challenge":{"tagline":"Verified flag issuer challenge for country and board-specific flair.","description":"Flags Challenge runs on a Bitsocial community node and verifies signed flag assertions from a configurable issuer service. The first bundled profile targets 5chan, covering country flags, /pol/ memeflags, and /mlp/ pony flags, while keeping the same pattern reusable for any client that runs its own issuer and namespace."},"bitsocial-cli":{"tagline":"Command-line control for nodes, communities, and automation workflows.","description":"Bitsocial CLI is the official terminal interface for the protocol. Use it to manage nodes, publish content, start a WebSocket JSON-RPC server for programmatic control and code automation, automate admin flows, and work directly against Bitsocial primitives without a GUI client."},"bitsocial-seeder":{"tagline":"Public seeder for Bitsocial communities, packaged for Docker and npm.","description":"Bitsocial Seeder pins community first pages, post-update CIDs, and pubsub topic routing through a Bitsocial daemon. It reuses an already-running local daemon when one is reachable or starts the bundled bitsocial-cli daemon automatically, and ships as both a Docker image for unattended VPS deployments and an npm package for Node-first operators."},"pubsub-provider":{"tagline":"Fallback pubsub relay and routing provider for Bitsocial operators.","description":"Pubsub Provider runs a bundled Kubo node with Bitsocial-compatible pubsub, gateway, name-provider, and delegated HTTP routing endpoints. It is useful as a fallback path for clients that disable pure browser P2P, and it defaults to swarm port 4002 so it can run beside bitsocial-seeder on the same host."},"telegram-bots":{"tagline":"Feed bots that relay new Bitsocial posts into Telegram channels or groups.","description":"Bitsocial Telegram Bots monitor client community lists and forward new posts into Telegram destinations with inline links back to Bitsocial clients. The active bot covers 5chan feeds today, with the repo structured to add more client-specific bots over time."},"5chan-board-manager":{"tagline":"Board administration tooling for custom 5chan communities.","description":"5chan Board Manager connects to Bitsocial CLI to help administrators create, configure, and moderate custom imageboard boards. It is the utility layer for board owners who want operational control."},"ai-moderation-challenge":{"tagline":"OpenAI-compatible moderation checks against each community's rules.","description":"AI Moderation Challenge evaluates Bitsocial comment content against <code>community.rules</code> with an OpenAI-compatible model endpoint. Communities can route risky posts to review while keeping provider keys and prompts in private node settings."},"r9k-challenge":{"tagline":"Robot9000-style originality gate for communities that want anti-repost posting UX.","description":"R9K Challenge runs on a Bitsocial community node and compares normalized post text against the owner node's local comments database. It gives communities a <robot9000>Robot9000</robot9000>-style posting experience without using AI: exact reposts fail before acceptance, backlinks are ignored, repeated failures trigger escalating temporary bans, and accepted-text hashes stay in private local state instead of storing raw post text."},"wordfilter-challenge":{"tagline":"Community wordfilters enforced as a posting rule instead of a display filter.","description":"Wordfilter Challenge makes a community's word replacements binding. Publishing clients apply the replacements before signing, so the signed comment and its CID already contain the replacement text, and the community node rejects any publication that still contains a filtered word. It implements the <code>wordfilter/v1</code> contract, so a client written against that contract keeps working with other implementations."},"challenge-composer":{"tagline":"Offline-first editor for a community's anti-spam challenge settings.","description":"Challenge Composer visualizes and edits the <code>challenges</code> array of a Bitsocial community's settings, then exports a ready-to-run CLI script. It ships as a single self-contained HTML file that makes no outward requests at runtime, so it can be opened straight from disk or a USB stick."},"bitsocial-previewer":{"tagline":"Link-preview and redirect server that renders share cards for Bitsocial posts.","description":"Bitsocial Previewer renders OpenGraph and Twitter cards when a post link is shared on other platforms, then redirects real browsers into the app. One instance is multi-tenant by hostname, so a single deployment and TLS setup covers every client and mirror domain."},"bitsocial-indexer":{"tagline":"Self-hostable crawler, search index, and web UI for Bitsocial communities.","description":"Bitsocial Indexer connects to a Bitsocial CLI daemon over RPC, indexes the communities an operator configures into a local SQLite database, and serves them through a REST and full-text search API with an optional server-rendered web UI. It ships empty: the operator decides what gets indexed."},"bitsocial-github-alerts":{"tagline":"Telegram bot that posts compact GitHub activity for Bitsocial repositories.","description":"Bitsocial GitHub Alerts forwards pushes, releases, issues, and pull requests from GitHub into any Telegram chat, group, or forum topic. The Bitsocial team runs it for its own repositories, and the container image is public so anyone can self-host it for theirs."},"bitbones":{"tagline":"Bare-bones reference client where every view is a thin wrapper over one hook.","description":"bitbones is the smallest useful surface over the Bitsocial React hooks: almost no styling, no product opinions, and a single hook behind every view. It is the fastest place to reproduce a bug or try a hooks change against real communities, and its default feed can be switched between the Seedit and 5chan community lists."}}},"mirrorVerificationTooltip":"This mirror page hash matches the official GitHub HTML release for {{appName}} {{releaseTag}}.","mirrorVerified":"Verified","mirrorWeb3Tag":"web3","mirrorWeb3TooltipTitle":"{{ensName}} Web3 mirror","mirrorWeb3TooltipBody":".eth names are ENS names, not DNS records. The .limo address is a centralized gateway. Bitsocial uses IPFS, so with the IPFS Companion browser extension running an IPFS full node you can open {{ensName}} directly as static HTML without .limo.","mirrorWeb3CompanionLink":"Install IPFS Companion","githubTopic":{"description":"Explore Bitsocial apps under development on GitHub. If you are building one, add the \"bitsocial\" topic to your repo so others can find it.","link":"Explore GitHub topic","linkShort":"Explore GitHub"}},"home":{"devOnlyRouteNotice":"{{path}} is still under construction. You have been redirected to the front page.","dismissDevOnlyRouteNotice":"Dismiss notice"},"privacy":{"eyebrow":"How bitsocial.net handles data","title":"Privacy Notice","sections":{"summary":{"title":"Summary","body":["bitsocial.net collects very little data.","The code for bitsocial.net is free and open source and lives in the public bitsocial-web repository.","If you sign up for the newsletter, the email address you enter is sent to the mailing-list service configured for the site.","Other than that, bitsocial.net uses privacy-focused traffic and performance measurement, stores your language preference in browser storage, and loads fonts from Google Fonts."]},"uses":{"title":"What bitsocial.net uses","body":["Newsletter signup sends your email address to the configured mailing-list endpoint only when you submit the form.","Vercel Web Analytics and Speed Insights are used on bitsocial.net for aggregate traffic and performance measurement.","The about site and docs site store your language choice in browser storage so the interface can reopen in the language you selected.","The public pages load fonts from Google Fonts, so your browser connects to Google's font servers."]},"cookies":{"title":"Cookies and storage","body":["bitsocial.net does not use Google Analytics, Google Tag Manager, Meta Pixel, Hotjar, or similar advertising or profiling scripts on the public site.","bitsocial.net tries to avoid non-essential tracking cookies.","The site does use browser storage for language preference, and the stats surface may rely on strictly necessary Grafana session state for administrator login.","There is no cookie banner right now because the public site is limited to language-preference storage and privacy-focused measurement. If that changes, this page should change too."]},"choices":{"title":"Your choices","body":["You can avoid newsletter processing by not submitting the signup form.","You can clear the language preference at any time by clearing site storage in your browser.","You can block remote font requests with browser or network controls, although doing so may change the site's appearance.","We will update this page if the public site starts using additional tracking, embeds, or signup flows.","This version was last updated on April 5, 2026."]}},"contact":{"title":"Contact","body":"Questions or corrections about this page can be sent to"}},"about":{"sectionLabel":"About Us","title":"Bitsocial Core Team","subtitle":"Bitsocial has been in active development since early 2022, a grassroots project funded from day one by founder Esteban Abaroa out of his own savings.","members":{"esteban":{"role":"Founder and Lead Developer"},"rinse":{"role":"Co-Founder and Core Developer"},"tommaso":{"role":"Co-Founder and Core Developer, Founder & CEO of <forgeLink>Bitsocial Forge</forgeLink>"}},"memberProfileAlt":"Profile photo of {{name}}"}}},"newsletter":{"isConfigured":true,"requiresConfirmation":false},"clientDefaults":{"graphicsMode":"pending"}}