Polycentric is an open-source, distributed social network that lets you publish content to multiple servers. If you're censored on one server, your content remains accessible from other servers.
⚠️ We're working on this.
You will need just, Docker, and pnpm.
- Run the local server:
just services/start - Build rs-core for all platforms:
just packages/rs-core/build-all - Install dependencies:
pnpm install - Run the app:
pnpm run:iosorpnpm run:android
pnpm devbuilds all SDKs in watch mode.just legacy/test-coreruns integration test on local server
| Package | Description |
|---|---|
packages/js-core |
Core JavaScript library containing the main Polycentric protocol logic |
packages/js-browser |
Browser SDK using SQLite WASM for local storage |
packages/js-node |
Node.js SDK using sqlite3 for local storage |
packages/react-native |
React Native SDK for mobile applications |
packages/rs-core |
Rust core library - the underlying protocol implementation |
packages/rs-core-wasm-browser |
Rust core compiled to WebAssembly for browser environments |
packages/rs-core-wasm-node |
Rust core compiled to WebAssembly for Node.js environments |
| App | Description |
|---|---|
apps/polycentric |
The main Polycentric social network application (Expo/React Native) |
| Service | Description |
|---|---|
services/polycentric-server |
Reference server implementation for hosting Polycentric instances |
services/verifiers-server |
Server for verifying claims and signatures in the protocol |
