feat: emphasize open source + self-hosted nature of rStack

Add nav header (Demo/Create Space/Sign In), update hero and pillars to
lead with open source and self-hosted messaging, add dedicated
"Self-Host Your Stack" section with docker compose deployment example
and four benefit cards, update footer tagline.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
Jeff Emmett 2026-02-18 09:24:23 +00:00
parent cd42502aca
commit 5be35fdb56
1 changed files with 102 additions and 17 deletions

View File

@ -4,7 +4,7 @@
<meta charset="UTF-8"> <meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta name="viewport" content="width=device-width, initial-scale=1.0">
<link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>📦</text></svg>"> <link rel="icon" href="data:image/svg+xml,<svg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 100 100'><text y='.9em' font-size='90'>📦</text></svg>">
<title>rStack - Community-Owned Tools for Collaboration</title> <title>rStack - Open-Source, Self-Hosted Tools for Communities</title>
<style> <style>
* { margin: 0; padding: 0; box-sizing: border-box; } * { margin: 0; padding: 0; box-sizing: border-box; }
@ -343,27 +343,42 @@
</head> </head>
<body> <body>
<!-- Nav -->
<nav style="border-bottom:1px solid rgba(255,255,255,0.08);padding:1rem 0;">
<div style="max-width:900px;margin:0 auto;padding:0 1.5rem;display:flex;align-items:center;justify-content:space-between;">
<a href="/" style="display:flex;align-items:center;gap:0.5rem;text-decoration:none;color:#e2e8f0;">
<span style="font-size:1.1rem;font-weight:600;">rStack</span>
</a>
<div style="display:flex;align-items:center;gap:1rem;">
<a href="#app-grid" style="color:#94a3b8;text-decoration:none;font-size:0.875rem;transition:color 0.2s;" onmouseover="this.style.color='#e2e8f0'" onmouseout="this.style.color='#94a3b8'">Demo</a>
<a href="https://rspace.online" style="color:#94a3b8;text-decoration:none;font-size:0.875rem;transition:color 0.2s;" onmouseover="this.style.color='#e2e8f0'" onmouseout="this.style.color='#94a3b8'">Create Space</a>
<a href="https://encryptid.jeffemmett.com" style="color:#94a3b8;text-decoration:none;font-size:0.875rem;transition:color 0.2s;" onmouseover="this.style.color='#e2e8f0'" onmouseout="this.style.color='#94a3b8'">Sign In</a>
</div>
</div>
</nav>
<div class="hero"> <div class="hero">
<h1>rStack</h1> <h1>rStack</h1>
<p class="tagline">Community-owned tools for collaboration, governance, and knowledge.</p> <p class="tagline">Open-source, self-hosted tools for communities.</p>
<p class="description"> <p class="description">
The <span class="hl">r-Stack</span> is a suite of interoperable, local-first applications The <span class="hl">r-Stack</span> is a suite of <span class="hl">open-source</span>,
unified by <span class="hl">EncryptID</span> &mdash; a single secure login that keeps your interoperable applications you can run on your own server. No vendor lock-in, no
keys on your device. Every tool shares the same real-time sync layer, so your community's platform fees, no terms of service that change overnight. Unified by
data flows freely between apps without import/export, APIs, or vendor lock-in. <span class="hl">EncryptID</span> passkey auth, every tool shares the same sync layer
so your community's data flows freely between apps &mdash; and stays yours.
</p> </p>
</div> </div>
<div class="pillars"> <div class="pillars">
<div class="pillar"> <div class="pillar">
<div class="pillar-icon">🔐</div> <div class="pillar-icon">📖</div>
<div class="pillar-title">One Identity</div> <div class="pillar-title">Open Source</div>
<div class="pillar-desc">EncryptID passkey login across every app. No passwords, no third-party auth.</div> <div class="pillar-desc">Every app is source-available. Read the code, fork it, contribute back.</div>
</div> </div>
<div class="pillar"> <div class="pillar">
<div class="pillar-icon">🏠</div> <div class="pillar-icon">🏠</div>
<div class="pillar-title">Local-First</div> <div class="pillar-title">Self-Hosted</div>
<div class="pillar-desc">Your keys and data live on your device. Sync peer-to-peer via CRDTs.</div> <div class="pillar-desc">Run the whole stack on your own server. Your data never touches ours.</div>
</div> </div>
<div class="pillar"> <div class="pillar">
<div class="pillar-icon">🔗</div> <div class="pillar-icon">🔗</div>
@ -547,6 +562,76 @@
</div> </div>
</div> </div>
<!-- Self-Host -->
<div class="section-full alt-bg">
<div class="section-inner">
<div class="section-divider"></div>
<h2>Self-Host Your Stack</h2>
<p class="section-desc">
Every r-Stack app ships as a Docker container. Clone the repo, run
<span class="hl">docker compose up</span>, and the whole suite is live on
your hardware &mdash; a VPS, a home server, or a Raspberry Pi.
</p>
<div class="flow-box" style="margin-bottom: 2rem;">
<pre>
$ git clone https://git.rstack.online/rstack
$ cd rstack
$ cp .env.example .env # set your domain + secrets
$ docker compose up -d # that's it
✓ rSpace → space.yourdomain.org
✓ rNotes → notes.yourdomain.org
✓ rVote → vote.yourdomain.org
✓ rFunds → funds.yourdomain.org
✓ rFiles → files.yourdomain.org
✓ rMaps → maps.yourdomain.org
✓ EncryptID → id.yourdomain.org
...and every other app in the suite
</pre>
</div>
<div class="unlock-grid">
<div class="unlock-card">
<h3>Your server, your rules</h3>
<p>
No SaaS subscription, no per-seat pricing, no usage caps. Run the
entire stack for your 5-person co-op or your 500-person organization
on a single $10/month VPS. Scale by adding hardware, not by upgrading
a pricing tier.
</p>
</div>
<div class="unlock-card">
<h3>Data sovereignty by default</h3>
<p>
Your community's files, notes, votes, and financial records live on
disk you control. No third-party cloud provider can read, mine, or
accidentally leak your data. Backups are just files you copy.
</p>
</div>
<div class="unlock-card">
<h3>Fork and customize</h3>
<p>
Every app is open source. Need a custom voting algorithm? A different
map tile provider? A branded theme for your community? Fork the repo,
change what you need, and deploy. No permission required.
</p>
</div>
<div class="unlock-card">
<h3>No vendor, no kill switch</h3>
<p>
SaaS tools disappear when the company pivots or shuts down. Self-hosted
open-source tools keep running as long as you want them to. Your community's
infrastructure doesn't depend on anyone else's business model.
</p>
</div>
</div>
</div>
</div>
<!-- EncryptID Deep Dive --> <!-- EncryptID Deep Dive -->
<div class="section-full"> <div class="section-full">
<div class="section-inner"> <div class="section-inner">
@ -717,11 +802,11 @@
<div class="unlock-card"> <div class="unlock-card">
<h3>Real ownership of community infrastructure</h3> <h3>Real ownership of community infrastructure</h3>
<p> <p>
Because data is local-first and identity is self-sovereign, communities Because every app is <span class="hl">open source</span> and
aren't tenants on someone else's platform. They can export everything, <span class="hl">self-hosted</span>, communities aren't tenants on
fork the tools, self-host on their own server, or move between providers. someone else's platform. Fork the code, run it on your own hardware,
The r-Stack is infrastructure that communities <em>own</em>, not audit every line. The r-Stack is infrastructure that communities
services they <em>rent</em>. <em>own</em>, not services they <em>rent</em>.
</p> </p>
</div> </div>
</div> </div>
@ -866,7 +951,7 @@
</div> </div>
<footer> <footer>
<p>rStack &mdash; community-owned, local-first, interoperable</p> <p>rStack &mdash; open source, self-hosted, community-owned</p>
<p style="margin-top: 0.5rem;"> <p style="margin-top: 0.5rem;">
<a href="https://rspace.online">rSpace</a> &middot; <a href="https://rspace.online">rSpace</a> &middot;
<a href="https://encryptid.jeffemmett.com">EncryptID</a> &middot; <a href="https://encryptid.jeffemmett.com">EncryptID</a> &middot;