Skip to content

Commit 8a38c93

Browse files
gmoonclaude
andcommitted
Add Getting Started page, parameterize install URL, update nav
- New GettingStartedPage with install instructions, Claude Code integration, and LLM placeholder cards (Cursor, Windsurf, Copilot, Gemini, Codex) - Add constants.ts with INSTALL_URL and INSTALL_CMD as single source of truth - Wire /getting-started route in App.tsx - Update Hero button and Header nav to link to Getting Started page - Update all install URLs to forkzero.ai/lattice/install.sh Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
1 parent 5db5d8e commit 8a38c93

6 files changed

Lines changed: 800 additions & 5 deletions

File tree

src/App.tsx

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,9 +1,11 @@
11
import { HomePage } from './pages/HomePage'
22
import { ReaderPage } from './pages/ReaderPage'
33
import { BlogPage } from './pages/BlogPage'
4+
import { GettingStartedPage } from './pages/GettingStartedPage'
45

56
export function parseRoute(path: string): { page: string; slug?: string } {
67
if (path === '/reader' || path === '/reader/') return { page: 'reader' }
8+
if (path === '/getting-started' || path === '/getting-started/') return { page: 'getting-started' }
79
if (path === '/blog' || path === '/blog/') return { page: 'blog' }
810
if (path.startsWith('/blog/')) {
911
const slug = path.replace(/^\/blog\//, '').replace(/\/$/, '')
@@ -18,6 +20,8 @@ export function App() {
1820
switch (route.page) {
1921
case 'reader':
2022
return <ReaderPage />
23+
case 'getting-started':
24+
return <GettingStartedPage />
2125
case 'blog':
2226
return <BlogPage />
2327
case 'blog-post':

src/components/Header.tsx

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -58,6 +58,9 @@ export function Header({ minimal }: { minimal?: boolean }) {
5858
</a>
5959
{!minimal && (
6060
<nav style={styles.nav}>
61+
<a href="/getting-started" style={styles.navLink}>
62+
Get Started
63+
</a>
6164
<a href="/blog" style={styles.navLink}>
6265
Blog
6366
</a>

src/components/Hero.tsx

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,5 @@
11
import { colors, fonts, gradient } from '../tokens'
2+
import { INSTALL_CMD } from '../constants'
23

34
const styles: Record<string, React.CSSProperties> = {
45
hero: {
@@ -80,9 +81,7 @@ export function Hero() {
8081
</p>
8182
<div style={styles.ctaRow}>
8283
<a
83-
href="https://github.com/forkzero/lattice"
84-
target="_blank"
85-
rel="noopener noreferrer"
84+
href="/getting-started"
8685
style={styles.ctaPrimary}
8786
>
8887
Get Started
@@ -91,7 +90,7 @@ export function Hero() {
9190
See it live
9291
</a>
9392
</div>
94-
<span style={styles.installHint}>curl -fsSL https://lattice.forkzero.ai/install.sh | sh</span>
93+
<span style={styles.installHint}>{INSTALL_CMD}</span>
9594
</section>
9695
)
9796
}

src/constants.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
export const INSTALL_URL = 'https://forkzero.ai/lattice/install.sh'
2+
export const INSTALL_CMD = `curl -fsSL ${INSTALL_URL} | sh`

src/data/blog-posts.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -154,7 +154,7 @@ Think of it as the coordination layer underneath. RAG selects *from* knowledge;
154154
155155
\`\`\`bash
156156
# Install
157-
curl -fsSL https://raw.githubusercontent.com/forkzero/lattice/main/install.sh | sh
157+
curl -fsSL https://forkzero.ai/lattice/install.sh | sh
158158
159159
# Initialize a lattice in your project
160160
lattice init

0 commit comments

Comments
 (0)