Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
9 changes: 8 additions & 1 deletion assets/css/main.css
Original file line number Diff line number Diff line change
Expand Up @@ -301,6 +301,13 @@ html.js .reveal.in { opacity: 1; transform: none; }
.card-title { font-size: 18px; font-weight: 700; margin: 0 0 8px; }
.card-text { color: var(--muted); font-size: 14.5px; margin: 0; }

/* ───────── Beliefs (the "why") ───────── */
.beliefs-grid { display: grid; grid-template-columns: repeat(2, 1fr); gap: 28px 36px; margin-top: 4px; }
.belief { padding-top: 22px; border-top: 2px solid var(--orange); }
.belief-title { font-size: clamp(19px, 2.1vw, 24px); font-weight: 800; letter-spacing: -.3px;
line-height: 1.18; margin: 0 0 12px; }
.belief-text { color: var(--muted); font-size: 15px; line-height: 1.65; margin: 0; }

/* ───────── Roadmap ───────── */
.waves, .donate-band { --ac: var(--orange); --ac-glow: var(--orange-glow); }
.status-pill { font-size: 11px; letter-spacing: .5px; text-transform: uppercase; color: var(--ac); white-space: nowrap;
Expand Down Expand Up @@ -419,7 +426,7 @@ html.js .reveal.in { opacity: 1; transform: none; }
.brand-mark { width: 22px; height: 22px; }
.section { padding: 72px 0; }
.hero { padding: 80px 0 64px; }
.feat-grid, .project-featured .feat-grid, .cards-3, .cards-2, .faq-grid { grid-template-columns: 1fr; }
.feat-grid, .project-featured .feat-grid, .cards-3, .cards-2, .faq-grid, .beliefs-grid { grid-template-columns: 1fr; }
.project { padding: 26px 22px; }
.project-head { flex-wrap: wrap; } /* version chip + ★ flag drop to their own line */
.wave-body { padding: 14px 18px; }
Expand Down
41 changes: 34 additions & 7 deletions data/content.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,13 @@

hero:
eyebrow: "Private Monero mining · self-hosted"
title_lead: "Run the whole"
title_accent: "operation"
title_tail: "yourself."
title_lead: "Own the whole"
title_accent: "operation."
title_tail: ""
sub: >-
The <strong>P2Pool&nbsp;Starter&nbsp;Stack</strong> is open-source infrastructure for private,
optimized <strong>Monero&nbsp;+&nbsp;Tari</strong> mining on hardware you own — an
<strong>orchestrator</strong> and the <strong>miners</strong> that feed it.
No custodians. No exposed home IP. No hand-tuning.
We built this to mine Monero on a stack you <strong>own outright</strong> — no operator taking a
cut, no custodian, and your mining kept quietly to yourself. Now it's <strong>one command</strong>,
so anyone can.
command:
title: "you@home: ~/pithead"
lines:
Expand All @@ -24,6 +23,34 @@ hero:
cta_secondary: { label: "View on GitHub", href: "https://github.com/p2pool-starter-stack" }
meta: "MIT-licensed · built in the open · zero third-party requests"

# "Why we built this" — the belief, stated first (Simon Sinek: start with why).
# This leads the page; the projects below are the proof, not the pitch.
beliefs:
eyebrow: "// why we built this"
title: "Why it exists — and where to see it."
sub: >-
It started with wanting a Monero mine I owned outright: private, and free of middlemen. None of
this is a slogan — each belief is a decision you can see in the defaults, the containers, and the docs.
items:
- belief: "Own the whole stack."
text: >-
Your node, your P2Pool, your dashboard — the entire operation runs on hardware you control, from
config you can read. Nothing rented, nothing hosted for you, nothing anyone else can switch off.
- belief: "Mine without telling the world."
text: >-
Monero, Tari, and P2Pool run as Tor hidden services by default — no port forwarding, no home IP
advertised to inbound peers. Your mining stays your business. Tor-first today, and honest about
the few outbound edges still on clearnet.
- belief: "Keep what you earn."
text: >-
P2Pool pays block rewards straight to your wallet — no pool operator, no cut, no account. Even
the miner's dev fee is just XMRig's standard 1%, and one line sets it to zero.
- belief: "And it shouldn't take an expert."
text: >-
One command provisions the node, Tor, payouts, RandomX kernel tuning, and the dashboard —
sensible defaults, a preview before anything disruptive, and a doctor when something looks off.
The fiddly part is done; you keep the control.

# Mono stat band under the hero.
stats:
- { value: "9", label: "services, one compose file" }
Expand Down
53 changes: 35 additions & 18 deletions layouts/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,40 @@ <h1 class="hero-title rise">{{ $c.hero.title_lead }} <span class="accent glow-te
</div>
</section>

{{/* ───────────────────────── WHY / BELIEFS ───────────────────────── */}}
<section class="section section-alt" id="why">
<div class="wrap">
<p class="eyebrow mono reveal">{{ $c.beliefs.eyebrow }}</p>
<h2 class="section-title reveal">{{ $c.beliefs.title }}</h2>
{{ with $c.beliefs.sub }}<p class="section-sub reveal">{{ . }}</p>{{ end }}
<div class="beliefs-grid">
{{ range $c.beliefs.items }}
<article class="belief reveal">
<h3 class="belief-title">{{ .belief }}</h3>
<p class="belief-text">{{ .text }}</p>
</article>
{{ end }}
</div>
</div>
</section>

{{/* ───────────────────────── ETHOS (the "how") ───────────────────────── */}}
<section class="section" id="ethos">
<div class="wrap">
<p class="eyebrow mono reveal">{{ $c.ethos.eyebrow }}</p>
<h2 class="section-title reveal">{{ $c.ethos.title }}</h2>
<div class="cards-3 ethos-grid">
{{ range $i, $e := $c.ethos.items }}
<article class="card ethos-card reveal">
<span class="ethos-num mono">{{ printf "%02d" (add $i 1) }}</span>
<h3 class="card-title">{{ $e.title }}</h3>
<p class="card-text">{{ $e.text }}</p>
</article>
{{ end }}
</div>
</div>
</section>

{{/* ───────────────────────── STATS ───────────────────────── */}}
<section class="stats-band">
<div class="wrap stats-grid">
Expand Down Expand Up @@ -184,25 +218,8 @@ <h3 class="donate-title">{{ .title }}</h3>
</div>
</section>

{{/* ───────────────────────── ETHOS ───────────────────────── */}}
<section class="section section-alt" id="ethos">
<div class="wrap">
<p class="eyebrow mono reveal">{{ $c.ethos.eyebrow }}</p>
<h2 class="section-title reveal">{{ $c.ethos.title }}</h2>
<div class="cards-3 ethos-grid">
{{ range $i, $e := $c.ethos.items }}
<article class="card ethos-card reveal">
<span class="ethos-num mono">{{ printf "%02d" (add $i 1) }}</span>
<h3 class="card-title">{{ $e.title }}</h3>
<p class="card-text">{{ $e.text }}</p>
</article>
{{ end }}
</div>
</div>
</section>

{{/* ───────────────────────── FAQ ───────────────────────── */}}
<section class="section" id="faq">
<section class="section section-alt" id="faq">
<div class="wrap">
<p class="eyebrow mono reveal">{{ $c.faq.eyebrow }}</p>
<h2 class="section-title reveal">{{ $c.faq.title }}</h2>
Expand Down
4 changes: 2 additions & 2 deletions layouts/partials/header.html
Original file line number Diff line number Diff line change
Expand Up @@ -5,9 +5,9 @@
<span class="brand-word">P2POOL <span class="brand-accent">STARTER&nbsp;STACK</span></span>
</a>
<nav class="nav" aria-label="Primary">
<a href="#projects">Projects</a>
<a href="#why">Why</a>
<a href="#flow">How it works</a>
<a href="#ethos">Ethos</a>
<a href="#projects">Projects</a>
<a href="#roadmap">Roadmap</a>
<a href="#faq">FAQ</a>
<a class="nav-cta" href="{{ .Site.Params.orgURL }}" target="_blank" rel="noopener">GitHub ↗</a>
Expand Down