Skip to content

Repository files navigation

Gutenberg banner: miasma fog and wraith silhouette in sickly green tones

Gutenberg

Gutenberg is a decentralized protocol for censorship-resistant publishing: freely, anonymously, and permanently.

CI status Docker images status Node.js pnpm TypeScript Solana program Anchor program


Important

Experimental. The Gutenberg Solana on-chain program is not deployed to Solana mainnet yet. This project is under active development and has not yet hit a stable release.


Modern censorship is coordinated and systemic: courts issue takedowns, infrastructure providers remove access, platforms enforce quiet requests, and centralized systems define narratives. When publishing is governed by authoritive entities, freedom of speech is inherently surpressed.

Local sovereignty

Gutenberg starts from one premise: publishing should not require institutional permission. Control stays with the individual, so publishing decisions are not delegated to a platform, a hosting intermediary, or a central authority.

This baseline gives everyone operational sovereignty, creating the conditions required for independent publication.

Protocol design

Gutenberg is built to turn that sovereignty into durable distribution. It anchors publication state on Solana to provide immutable history, separates identity from storage so no single account controls existence, and allows independent deployments to compound network resilience over time.

The result is a publishing system where suppressing information requires coordinated pressure across many operators instead of a single takedown target.

Getting Started

This quick start launches your own Gutenberg instance on your computer. Think of it as starting your own independent publishing environment, where you can create and manage content without relying on anyone else.

You do not need to configure blockchain infrastructure yourself for this step. The goal is simply to get Gutenberg running locally so you can explore the interface and understand how local publishing works in practice.

  1. Install Docker: Docker Desktop for Mac or Windows. Install it, open it once, and leave it running.

  2. Open Terminal (Mac) or PowerShell / Command Prompt (Windows), run:

docker pull ghcr.io/gutenberg-sh/gutenberg:latest
docker run -d --name gutenberg \
  -p 8080:80 -p 4000:4000 \
  -v gutenberg-pg:/var/lib/postgresql/data \
  ghcr.io/gutenberg-sh/gutenberg:latest
u=http://localhost:8080
open "$u" 2>/dev/null||xdg-open "$u" 2>/dev/null||cmd.exe /c start "$u"
  1. Open http://localhost:8080 in your browser. Done!

Optional: Wallet setup

While exploring, you can run Gutenberg without a wallet. For signing on-chain actions, you will need one.

A wallet is your cryptographic identity in the Solana ecosystem. If you do not have one yet, install Phantom, Solflare, or another Solana wallet, follow the onboarding flow to create a wallet, and securely back up your recovery phrase.

Contributing

To contribute or change the code, see CONTRIBUTING.md.

License

MIT

About

Gutenberg is a decentralized protocol for censorship-resistant, private, permanent publishing.

Resources

Contributing

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages