Commit e08a892

Eric Bower  ·  2026-05-09 12:51:40 -0400 EDT
parent fc52491
docs: copy
1 files changed,  +23, -19
+23, -19
......@@ -384,6 +384,7 @@ p { margin-bottom: 1rem; }
384384 .cta-section h2 {
385385 font-size: 1.8rem;
386386 margin-bottom: 0.5rem;
387+ display: block;
387388 }
388389
389390 .cta-section .subtitle {
......@@ -640,13 +641,13 @@ code {
640641 <div>&nbsp;</div>
641642 <div><span class="comment"># These run in parallel — no config needed</span></div>
642643 <div><span class="cmd">zmx run lint docker run golangci-lint run</span></div>
643- <div><span class="output"> TODO: add example output</span></div>
644+ <div><span class="info"> → started session: ci.myrepo.lint</span></div>
644645 <div>&nbsp;</div>
645646 <div><span class="cmd">zmx run test go test ./...</span></div>
646- <div><span class="output"> TODO: add example output</span></div>
647+ <div><span class="info"> → started session: ci.myrepo.test</span></div>
647648 <div>&nbsp;</div>
648- <div><span class="cmd">zmx run build to build -o bin/pici .</span></div>
649- <div><span class="output"> TODO: add example output</span></div>
649+ <div><span class="cmd">zmx run build go build -o bin/pici .</span></div>
650+ <div><span class="info"> → started session: ci.myrepo.build</span></div>
650651 <div>&nbsp;</div>
651652 <div><span class="comment"># Wait for all to finish</span></div>
652653 <div><span class="cmd">zmx wait "*"</span></div>
......@@ -812,17 +813,24 @@ code {
812813 <div class="terminal-body">
813814 <div><span class="comment">--- docker-compose.yml ---</span></div>
814815 <div>services:</div>
815- <div> api:</div>
816- <div> image: myapp:latest</div>
817- <div> labels:</div>
818- <div> pico.http.expose: "true"</div>
819- <div> pico.http.host: "api.myapp.pico.sh"</div>
816+ <div>&nbsp;&nbsp;echo:</div>
817+ <div>&nbsp;&nbsp;&nbsp;&nbsp;build: .</div>
818+ <div>&nbsp;&nbsp;&nbsp;&nbsp;networks:</div>
819+ <div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- default</div>
820+ <div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;- pdeploy-ingress</div>
821+ <div>&nbsp;&nbsp;&nbsp;&nbsp;labels:</div>
822+ <div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;traefik.enable: true</div>
823+ <div>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;traefik.http.routers.echo.rule: Host(`echo-&lt;user&gt;.apps.pico.sh`)</div>
820824 <div>&nbsp;</div>
821- <div><span class="prompt">$ </span><span class="cmd">git remote add deploy ssh://deploy.pico.sh/myapp</span></div>
822- <div><span class="prompt">$ </span><span class="cmd">git push deploy main</span></div>
825+ <div>networks:</div>
826+ <div>&nbsp;&nbsp;pdeploy-ingress:</div>
827+ <div>&nbsp;&nbsp;&nbsp;&nbsp;external: true</div>
828+ <div>&nbsp;</div>
829+ <div><span class="prompt">$ </span><span class="cmd">git remote add pdeploy ssh://deploy.pico.sh/user/project.git</span></div>
830+ <div><span class="prompt">$ </span><span class="cmd">git push pdeploy main</span></div>
823831 <div>&nbsp;</div>
824832 <div><span class="info">→ containers deployed</span></div>
825- <div><span class="info">→ api.myapp.pico.sh is live</span></div>
833+ <div><span class="info">→ echo-&lt;user&gt;.apps.pico.sh is live</span></div>
826834 </div>
827835 </div>
828836 </div>
......@@ -838,7 +846,6 @@ code {
838846 <h2>Built for terminals, agents, and humans.</h2>
839847 <div class="feature-grid">
840848 <div class="feature-card">
841- <div class="icon">🤖</div>
842849 <h3>AI-Agent Friendly</h3>
843850 <p>
844851 Terminal workflows, rsync + SSH pubsub, JSONL status streams — everything an agent
......@@ -848,7 +855,6 @@ code {
848855 </p>
849856 </div>
850857 <div class="feature-card">
851- <div class="icon">🔌</div>
852858 <h3>SSH-First</h3>
853859 <p>
854860 No HTTP APIs to expose. No webhooks to configure. No OAuth tokens to manage.
......@@ -857,7 +863,6 @@ code {
857863 </p>
858864 </div>
859865 <div class="feature-card">
860- <div class="icon">📄</div>
861866 <h3>Static Site Artifacts</h3>
862867 <p>
863868 Build artifacts are plain HTML + CSS. No JavaScript. No app server. No build step.
......@@ -866,7 +871,6 @@ code {
866871 </p>
867872 </div>
868873 <div class="feature-card">
869- <div class="icon">🔐</div>
870874 <h3>Build Attestation</h3>
871875 <p>
872876 Automatic provenance baked into every job: runner hostname, OS, arch, repo, branch,
......@@ -972,8 +976,9 @@ code {
972976 </footer>
973977
974978 <script>
975-// Auto-generate anchor links for all h2 elements
979+// Auto-generate anchor links for all h2 elements (skip CTA)
976980 document.querySelectorAll('h2').forEach(h2 => {
981+ if (h2.closest('.cta-section')) return;
977982 const section = h2.closest('section, [id]');
978983 if (section && section.id) {
979984 const a = document.createElement('a');
......@@ -994,8 +999,7 @@ function handleSignup(e) {
994999 e.preventDefault();
9951000 const form = e.target;
9961001 const email = form.email.value;
997- // TODO: wire up to your backend / pipe.pico.sh / etc.
998- // For now, just show a confirmation
1002+ // wire up to your backend / pipe.pico.sh / etc.
9991003 form.innerHTML = `<p style="color: var(--green); padding: 0.7rem 0;">✓ You're on the list, ${email}.</p>`;
10001004 }
10011005 </script>