diff --git a/index.html b/index.html
index 24bf14b..cf1f1b3 100644
--- a/index.html
+++ b/index.html
@@ -954,6 +954,14 @@
rPrPubs
Collaborative publishing platform
↗
+
+
Planning
-
-
- Social & Media
+
+ Sharing
-
+
+ Observing
rDrData
Analytics & insights dashboard
↗
@@ -1168,7 +1170,7 @@
Functional Areas
What the stack does
- Twenty apps organized into seven functional areas. Each area solves a core challenge
+ Twenty-six apps organized into seven functional areas. Each area solves a core challenge
of community coordination. Use the apps you need — they work independently
or as an integrated suite.
@@ -1189,7 +1191,7 @@
✍️
Create & Collaborate
-
The creative workspace. Infinite canvases for spatial thinking, real-time documents for group writing, and a publishing pipeline that turns drafts into print-ready books.
+
The creative workspace. Infinite canvases, real-time documents, video, publishing, and merch — everything your community needs to make things together.
@@ -1217,6 +1219,22 @@
Drop in a document, get a print-ready pocket book. Four formats, Typst typesetting, instant PDF generation. From draft to published in minutes.
TypstPDF.jsMarkdown
+
+
+ Community video sharing and streaming. Host, curate, and discuss video content without platform algorithms, ads, or surveillance.
+ PeerTubeHLSActivityPub
+
+
+
+ Community merchandise on demand. Design, customize, and order stickers, shirts, and more with AI-powered design tools.
+ Print APIAI Design
+
@@ -1374,7 +1392,7 @@
π
Share & Connect
-
Media, identity, and relationships. Store and share files with end-to-end encryption, host video without algorithms, map your community's social graph, and even print merch on demand.
+
Media, identity, and relationships. Store and share files with end-to-end encryption, curate community photos, map your social graph, and manage your community's social presence.
@@ -1402,21 +1420,13 @@
End-to-end encrypted file storage. Your community's documents, images, and media — encrypted with keys only community members hold. No admin backdoor.
E2EES3-compatWebDAV
-
+
- Community video sharing and streaming. Host, curate, and discuss video content without platform algorithms, ads, or surveillance.
- PeerTubeHLSActivityPub
-
-
-
- Community merchandise on demand. Design, customize, and order stickers, shirts, and more with AI-powered design tools.
- Print APIAI Design
+ Manage your community's social media presence from one dashboard. Schedule posts, track engagement, and coordinate messaging across platforms.
+ API IntegrationsScheduler
diff --git a/rstack-apps.json b/rstack-apps.json
new file mode 100644
index 0000000..3a0af8e
--- /dev/null
+++ b/rstack-apps.json
@@ -0,0 +1,125 @@
+{
+ "_description": "Canonical r*App registry. Single source of truth for all AppSwitcher dropdowns, EcosystemFooters, and rApp explainer pages across the rStack ecosystem.",
+ "_updated": "2026-02-25",
+
+ "categories": [
+ {
+ "id": "create",
+ "name": "Creating",
+ "navLabel": "Create & Collaborate",
+ "icon": "βοΈ",
+ "color": "rgba(34,211,238,0.12)",
+ "cssClass": "area-create",
+ "description": "The creative workspace. Infinite canvases, real-time documents, video, publishing, and merch β everything your community needs to make things together."
+ },
+ {
+ "id": "plan",
+ "name": "Planning",
+ "navLabel": "Plan & Coordinate",
+ "icon": "πΊ",
+ "color": "rgba(52,211,153,0.12)",
+ "cssClass": "area-plan",
+ "description": "Spatial and temporal coordination for groups. Schedule events across time zones, plan trips collaboratively, and map your community's presence across the world."
+ },
+ {
+ "id": "communicate",
+ "name": "Communicating",
+ "navLabel": "Communicate",
+ "icon": "π¬",
+ "color": "rgba(167,139,250,0.12)",
+ "cssClass": "area-comm",
+ "description": "Real-time and asynchronous communication channels. Encrypted chat for immediate coordination, shared inboxes for email workflows, and forums for long-form discourse."
+ },
+ {
+ "id": "decide",
+ "name": "Deciding",
+ "navLabel": "Decide & Govern",
+ "icon": "π³",
+ "color": "rgba(251,113,133,0.12)",
+ "cssClass": "area-decide",
+ "description": "Democratic decision-making tools for any group. From lightweight polls to weighted conviction voting, with cryptographically signed ballots that are verifiable but private."
+ },
+ {
+ "id": "fund",
+ "name": "Funding & Commerce",
+ "navLabel": "Fund & Transact",
+ "icon": "π°",
+ "color": "rgba(251,191,36,0.12)",
+ "cssClass": "area-fund",
+ "description": "Community economics without crypto literacy. Pool resources, track budgets, run auctions, and manage treasuries β all through biometric login with smart wallets underneath."
+ },
+ {
+ "id": "share",
+ "name": "Sharing",
+ "navLabel": "Share & Connect",
+ "icon": "π",
+ "color": "rgba(56,189,248,0.12)",
+ "cssClass": "area-share",
+ "description": "Media, identity, and relationships. Store and share files with end-to-end encryption, curate community photos, map your social graph, and manage your community's social presence."
+ },
+ {
+ "id": "observe",
+ "name": "Observing",
+ "navLabel": "Observe & Analyze",
+ "icon": "π",
+ "color": "rgba(251,146,60,0.12)",
+ "cssClass": "area-observe",
+ "description": "Privacy-respecting analytics that your community controls. No third-party trackers, no data brokers, no surveillance capitalism."
+ },
+ {
+ "id": "work",
+ "name": "Work & Productivity",
+ "navLabel": "Work & Productivity",
+ "icon": "π",
+ "color": "rgba(148,163,184,0.12)",
+ "cssClass": "area-work",
+ "description": "Project management and task coordination for community teams."
+ },
+ {
+ "id": "identity",
+ "name": "Identity & Infrastructure",
+ "navLabel": "Identity & Infrastructure",
+ "icon": "π",
+ "color": "rgba(52,211,153,0.12)",
+ "cssClass": "area-identity",
+ "description": "The foundation layer. Passkey-based identity, zero-knowledge auth, and the self-hosted infrastructure that powers every r*App."
+ }
+ ],
+
+ "apps": [
+ { "id": "space", "name": "rSpace", "badge": "rS", "badgeColor": "bg-teal-300", "htmlBadgeClass": "badge-teal", "emoji": "π¨", "icon": "π", "category": "create", "domain": "rspace.online", "shortDesc": "Real-time collaborative canvas", "longDesc": "Collaborative spatial canvas. The integration hub where all r-Stack tools come together on a shared, infinite workspace. Real-time multiplayer with CRDT sync.", "tech": ["tldraw", "Y.js", "WebSocket"] },
+ { "id": "notes", "name": "rNotes", "badge": "rN", "badgeColor": "bg-amber-300", "htmlBadgeClass": "badge-amber", "emoji": "π", "icon": "π", "category": "create", "domain": "rnotes.online", "shortDesc": "Group note-taking & knowledge capture", "longDesc": "Real-time collaborative notebooks, checklists, and meeting notes. Block-based editor with end-to-end encryption and offline support.", "tech": ["BlockNote", "Y.js", "E2EE"] },
+ { "id": "pubs", "name": "rPubs", "badge": "rP", "badgeColor": "bg-rose-300", "htmlBadgeClass": "badge-rose", "emoji": "π", "icon": "π°", "category": "create", "domain": "rpubs.online", "shortDesc": "Collaborative publishing platform", "longDesc": "Drop in a document, get a print-ready pocket book. Four formats, Typst typesetting, instant PDF generation. From draft to published in minutes.", "tech": ["Typst", "PDF.js", "Markdown"] },
+ { "id": "tube", "name": "rTube", "badge": "rTu", "badgeColor": "bg-pink-300", "htmlBadgeClass": "badge-pink", "emoji": "π¬", "icon": "π¬", "category": "create", "domain": "rtube.online", "shortDesc": "Community video platform", "longDesc": "Community video sharing and streaming. Host, curate, and discuss video content without platform algorithms, ads, or surveillance.", "tech": ["PeerTube", "HLS", "ActivityPub"] },
+ { "id": "swag", "name": "rSwag", "badge": "rSw", "badgeColor": "bg-red-200", "htmlBadgeClass": "badge-red", "emoji": "π", "icon": "π", "category": "create", "domain": "rswag.online", "shortDesc": "Community merch & swag store", "longDesc": "Community merchandise on demand. Design, customize, and order stickers, shirts, and more with AI-powered design tools.", "tech": ["Print API", "AI Design"] },
+
+ { "id": "cal", "name": "rCal", "badge": "rC", "badgeColor": "bg-sky-300", "htmlBadgeClass": "badge-sky", "emoji": "π
", "icon": "π
", "category": "plan", "domain": "rcal.online", "shortDesc": "Collaborative scheduling & events", "longDesc": "Spatiotemporal group calendar. Ten zoom levels from moments to eras, map view for event locations, lunar phases, and deep integration with other r-Stack tools.", "tech": ["FullCalendar", "Leaflet", "iCal"] },
+ { "id": "trips", "name": "rTrips", "badge": "rT", "badgeColor": "bg-emerald-300", "htmlBadgeClass": "badge-emerald", "emoji": "βοΈ", "icon": "βοΈ", "category": "plan", "domain": "rtrips.online", "shortDesc": "Group travel planning in real time", "longDesc": "Group trip planning. Itineraries, destinations, packing lists, and expenses β all linked across rMaps, rFunds, and rNotes in real time.", "tech": ["Leaflet", "CRDTs", "Offline"] },
+ { "id": "maps", "name": "rMaps", "badge": "rM", "badgeColor": "bg-green-300", "htmlBadgeClass": "badge-green", "emoji": "πΊοΈ", "icon": "πΊοΈ", "category": "plan", "domain": "rmaps.online", "shortDesc": "Collaborative real-time mapping", "longDesc": "Collaborative real-time mapping. Pin locations, draw regions, plan routes, and visualize your community's spatial footprint with open map tiles.", "tech": ["Leaflet", "OpenStreetMap", "GeoJSON"] },
+
+ { "id": "chats", "name": "rChats", "badge": "rCh", "badgeColor": "bg-emerald-200", "htmlBadgeClass": "badge-emerald", "emoji": "π¬", "icon": "π¬", "category": "communicate", "domain": "rchats.online", "shortDesc": "Real-time encrypted messaging", "longDesc": "End-to-end encrypted community chat with self-sovereign identity. Channels, threads, and direct messages β all protected by EncryptID passkeys.", "tech": ["Matrix", "E2EE", "WebSocket"] },
+ { "id": "inbox", "name": "rInbox", "badge": "rI", "badgeColor": "bg-indigo-300", "htmlBadgeClass": "badge-indigo", "emoji": "π¬", "icon": "βοΈ", "category": "communicate", "domain": "rinbox.online", "shortDesc": "Private group messaging", "longDesc": "Shared group inbox with multi-sig approval workflows. Self-hosted email for communities with entity extraction and graph-based discourse threading.", "tech": ["SMTP", "NLP", "Multi-sig"] },
+ { "id": "mail", "name": "rMail", "badge": "rMa", "badgeColor": "bg-blue-200", "htmlBadgeClass": "badge-blue", "emoji": "βοΈ", "icon": "π§", "category": "communicate", "domain": "rmail.online", "shortDesc": "Community email & newsletters", "longDesc": "Self-hosted email and newsletter platform. Send community updates, manage mailing lists, and own your communication infrastructure.", "tech": ["Mailcow", "SMTP", "DKIM"] },
+ { "id": "forum", "name": "rForum", "badge": "rFo", "badgeColor": "bg-amber-200", "htmlBadgeClass": "badge-amber", "emoji": "π", "icon": "π£", "category": "communicate", "domain": "rforum.online", "shortDesc": "Threaded community discussions", "longDesc": "Self-hosted Discourse forums. Automated provisioning, DNS, SSL, and progress tracking. Full community discussion platform with trust levels and moderation.", "tech": ["Discourse", "Docker", "Auto-SSL"] },
+
+ { "id": "choices", "name": "rChoices", "badge": "rCo", "badgeColor": "bg-fuchsia-300", "htmlBadgeClass": "badge-fuchsia", "emoji": "βοΈ", "icon": "π", "category": "decide", "domain": "rchoices.online", "shortDesc": "Collaborative decision making", "longDesc": "Collaborative decision making. Structured frameworks for evaluating options, weighing trade-offs, and reaching consensus as a group.", "tech": ["CRDTs", "Real-time"] },
+ { "id": "vote", "name": "rVote", "badge": "rV", "badgeColor": "bg-violet-300", "htmlBadgeClass": "badge-violet", "emoji": "π³οΈ", "icon": "π³οΈ", "category": "decide", "domain": "rvote.online", "shortDesc": "Real-time polls & governance", "longDesc": "Community governance. Create polls, weighted votes, and conviction-style proposals. Cryptographically signed ballots tied to EncryptID for verifiable, private voting.", "tech": ["ZK Proofs", "CRDT Ledger", "ERC-4337"] },
+
+ { "id": "funds", "name": "rFunds", "badge": "rF", "badgeColor": "bg-lime-300", "htmlBadgeClass": "badge-lime", "emoji": "πΈ", "icon": "π", "category": "fund", "domain": "rfunds.online", "shortDesc": "Collaborative fundraising & grants", "longDesc": "Budget tracking and expense management. Split costs, allocate funds, and maintain transparent community finances with full audit trails.", "tech": ["CRDT Ledger", "Multi-sig"] },
+ { "id": "wallet", "name": "rWallet", "badge": "rW", "badgeColor": "bg-yellow-300", "htmlBadgeClass": "badge-yellow", "emoji": "π°", "icon": "π°", "category": "fund", "domain": "rwallet.online", "shortDesc": "Multi-chain community wallet", "longDesc": "Community treasury management. Track shared resources, contributions, and funding flows with smart wallets. Paymaster-sponsored gasless transactions.", "tech": ["ERC-4337", "Base L2", "USDC"] },
+ { "id": "cart", "name": "rCart", "badge": "rCt", "badgeColor": "bg-orange-300", "htmlBadgeClass": "badge-orange", "emoji": "π", "icon": "π", "category": "fund", "domain": "rcart.online", "shortDesc": "Group commerce & shared shopping", "longDesc": "Group purchasing and crowdfunding. Pool resources, compare options, and fund community projects together. Accepts community tokens as payment.", "tech": ["BFT-CRDT", "Tokens"] },
+ { "id": "auctions", "name": "rAuctions", "badge": "rA", "badgeColor": "bg-red-300", "htmlBadgeClass": "badge-red", "emoji": "π¨", "icon": "π¨", "category": "fund", "domain": "rauctions.online", "shortDesc": "Live auction platform", "longDesc": "Cosmolocal auctions. List items, bid with USDC on Base, and settle peer-to-peer with EncryptID identity verification.", "tech": ["Base L2", "USDC", "P2P"] },
+
+ { "id": "photos", "name": "rPhotos", "badge": "rPh", "badgeColor": "bg-pink-200", "htmlBadgeClass": "badge-sky", "emoji": "πΈ", "icon": "πΈ", "category": "share", "domain": "rphotos.online", "shortDesc": "Community photo commons", "longDesc": "Community photo commons. Shared albums, AI-powered tagging, facial recognition, and location mapping β all self-hosted with full ownership of your memories.", "tech": ["Immich", "ML Pipeline", "pgvector"] },
+ { "id": "network", "name": "rNetwork", "badge": "rNe", "badgeColor": "bg-blue-300", "htmlBadgeClass": "badge-blue", "emoji": "πΈοΈ", "icon": "πΈ", "category": "share", "domain": "rnetwork.online", "shortDesc": "Community network & social graph", "longDesc": "Community directory and relationship mapping. See who's connected, discover collaborators, and grow your network with DID-based portable identity.", "tech": ["Social Graph", "DID", "WebSocket"] },
+ { "id": "files", "name": "rFiles", "badge": "rFi", "badgeColor": "bg-cyan-300", "htmlBadgeClass": "badge-cyan", "emoji": "π", "icon": "π", "category": "share", "domain": "rfiles.online", "shortDesc": "Collaborative file storage", "longDesc": "End-to-end encrypted file storage. Your community's documents, images, and media β encrypted with keys only community members hold. No admin backdoor.", "tech": ["E2EE", "S3-compat", "WebDAV"] },
+ { "id": "socials", "name": "rSocials", "badge": "rSo", "badgeColor": "bg-sky-200", "htmlBadgeClass": "badge-sky", "emoji": "π’", "icon": "π’", "category": "share", "domain": "rsocials.online", "shortDesc": "Social media management", "longDesc": "Manage your community's social media presence from one dashboard. Schedule posts, track engagement, and coordinate messaging across platforms.", "tech": ["API Integrations", "Scheduler"] },
+
+ { "id": "data", "name": "rData", "badge": "rD", "badgeColor": "bg-purple-300", "htmlBadgeClass": "badge-purple", "emoji": "π", "icon": "π", "category": "observe", "domain": "rdata.online", "shortDesc": "Analytics & insights dashboard", "longDesc": "Self-hosted analytics dashboard. Lightweight, cookie-free, GDPR-compliant web analytics. See what matters without harvesting user data.", "tech": ["Plausible", "No cookies", "GDPR"] },
+
+ { "id": "work", "name": "rWork", "badge": "rWo", "badgeColor": "bg-slate-300", "htmlBadgeClass": "badge-slate", "emoji": "π", "icon": "π", "category": "work", "domain": "rwork.online", "shortDesc": "Project & task management", "longDesc": "Project management and task coordination for community teams. Kanban boards, sprints, and progress tracking.", "tech": ["Real-time", "CRDTs"] },
+
+ { "id": "ids", "name": "rIDs", "badge": "rId", "badgeColor": "bg-emerald-300", "htmlBadgeClass": "badge-emerald", "emoji": "π", "icon": "π", "category": "identity", "domain": "ridentity.online", "shortDesc": "Passkey identity & zero-knowledge auth", "longDesc": "Self-sovereign identity powered by EncryptID. Passkey authentication, zero-knowledge proofs, and portable credentials across the entire r*Stack.", "tech": ["WebAuthn", "ZK Proofs", "DID"] },
+ { "id": "stack", "name": "rStack", "badge": "r*", "badgeColor": "bg-gradient-to-br from-cyan-300 via-violet-300 to-rose-300", "htmlBadgeClass": "badge-rainbow", "emoji": "π¦", "icon": "π", "category": "identity", "domain": "rstack.online", "shortDesc": "Open-source community infrastructure", "longDesc": "The developer platform and documentation hub for the entire r*Stack ecosystem. Self-host guides, API docs, and community resources.", "tech": ["Docker", "Traefik", "Cloudflare"] }
+ ]
+}