|
2 | 2 | import BaseLayout from '../layouts/BaseLayout.astro'; |
3 | 3 |
|
4 | 4 | const title = "aipm"; |
5 | | -const description = "AI-powered project management for the terminal"; |
| 5 | +const description = "Claude Code is for coding. This is for PM-ing."; |
6 | 6 |
|
7 | 7 | const features = [ |
8 | 8 | { |
@@ -44,11 +44,24 @@ const features = [ |
44 | 44 | <!-- Hero --> |
45 | 45 | <section class="hero"> |
46 | 46 | <h1 class="hero-title">aipm<span class="cursor">_</span></h1> |
47 | | - <p class="hero-tagline">{description}</p> |
48 | | - <pre class="install-cmd"><code>brew tap ComputelessComputer/aipm && brew install aipm</code></pre> |
49 | | - <a href="https://github.com/ComputelessComputer/aipm" class="cta-btn" target="_blank" rel="noopener noreferrer"> |
50 | | - view on github → |
51 | | - </a> |
| 47 | + <p class="hero-tagline">Claude Code is for coding.<br/>This is for PM-ing.</p> |
| 48 | + <pre class="install-cmd" onclick="navigator.clipboard.writeText('brew tap ComputelessComputer/aipm && brew install aipm')" title="Click to copy"><code>brew tap ComputelessComputer/aipm && brew install aipm</code><span class="copy-hint">click to copy</span></pre> |
| 49 | + </section> |
| 50 | + |
| 51 | + <!-- Value Props --> |
| 52 | + <section class="value-props"> |
| 53 | + <div class="prop"> |
| 54 | + <h3>local-first</h3> |
| 55 | + <p>Your tasks live as plain files on your filesystem. No servers, no sync, no lock-in. Grep, sed, or script your way through everything.</p> |
| 56 | + </div> |
| 57 | + <div class="prop"> |
| 58 | + <h3>cli-first</h3> |
| 59 | + <p>Headless commands with JSON output. Built for scripting and AI coding agents. Works as well in a pipeline as it does interactively.</p> |
| 60 | + </div> |
| 61 | + <div class="prop"> |
| 62 | + <h3>super fast</h3> |
| 63 | + <p>Native Rust TUI. Instant startup, zero latency navigation, no Electron, no browser. Just your terminal.</p> |
| 64 | + </div> |
52 | 65 | </section> |
53 | 66 |
|
54 | 67 | <!-- Demo --> |
@@ -78,23 +91,6 @@ const features = [ |
78 | 91 | </div> |
79 | 92 | </section> |
80 | 93 |
|
81 | | - <!-- Install --> |
82 | | - <section class="install"> |
83 | | - <h2>install</h2> |
84 | | - <div class="install-methods"> |
85 | | - <div class="install-method"> |
86 | | - <h3>homebrew (macos/linux)</h3> |
87 | | - <pre><code>brew tap ComputelessComputer/aipm |
88 | | -brew install aipm</code></pre> |
89 | | - </div> |
90 | | - <div class="install-method"> |
91 | | - <h3>from source</h3> |
92 | | - <pre><code>git clone https://github.com/ComputelessComputer/aipm.git |
93 | | -cd aipm |
94 | | -cargo build --release</code></pre> |
95 | | - </div> |
96 | | - </div> |
97 | | - </section> |
98 | 94 | </BaseLayout> |
99 | 95 |
|
100 | 96 | <style> |
@@ -133,7 +129,60 @@ cargo build --release</code></pre> |
133 | 129 | .install-cmd { |
134 | 130 | display: inline-block; |
135 | 131 | text-align: left; |
136 | | - margin-bottom: var(--space-xl); |
| 132 | + cursor: pointer; |
| 133 | + position: relative; |
| 134 | + transition: border-color var(--transition-fast); |
| 135 | + } |
| 136 | + |
| 137 | + .install-cmd:hover { |
| 138 | + border-color: var(--color-accent); |
| 139 | + } |
| 140 | + |
| 141 | + .install-cmd:active { |
| 142 | + border-color: var(--color-accent-dim); |
| 143 | + } |
| 144 | + |
| 145 | + .copy-hint { |
| 146 | + display: block; |
| 147 | + font-size: 0.75rem; |
| 148 | + color: var(--color-text-muted); |
| 149 | + margin-top: var(--space-xs); |
| 150 | + text-align: right; |
| 151 | + } |
| 152 | + |
| 153 | + .install-cmd:hover .copy-hint { |
| 154 | + color: var(--color-accent); |
| 155 | + } |
| 156 | + |
| 157 | + /* Value Props */ |
| 158 | + .value-props { |
| 159 | + display: grid; |
| 160 | + grid-template-columns: 1fr; |
| 161 | + gap: var(--space-lg); |
| 162 | + padding: var(--space-2xl) 0; |
| 163 | + border-top: 1px solid var(--color-border); |
| 164 | + } |
| 165 | + |
| 166 | + @media (min-width: 640px) { |
| 167 | + .value-props { |
| 168 | + grid-template-columns: repeat(3, 1fr); |
| 169 | + } |
| 170 | + } |
| 171 | + |
| 172 | + .prop { |
| 173 | + padding: var(--space-lg); |
| 174 | + } |
| 175 | + |
| 176 | + .prop h3 { |
| 177 | + font-size: 1.125rem; |
| 178 | + color: var(--color-accent); |
| 179 | + margin-bottom: var(--space-sm); |
| 180 | + } |
| 181 | + |
| 182 | + .prop p { |
| 183 | + font-size: 0.9rem; |
| 184 | + color: var(--color-text-muted); |
| 185 | + line-height: 1.6; |
137 | 186 | } |
138 | 187 |
|
139 | 188 | .cta-btn { |
@@ -217,35 +266,4 @@ cargo build --release</code></pre> |
217 | 266 | line-height: 1.5; |
218 | 267 | } |
219 | 268 |
|
220 | | - /* Install */ |
221 | | - .install { |
222 | | - padding: var(--space-2xl) 0; |
223 | | - } |
224 | | - |
225 | | - .install h2 { |
226 | | - margin-bottom: var(--space-lg); |
227 | | - } |
228 | | - |
229 | | - .install-methods { |
230 | | - display: grid; |
231 | | - grid-template-columns: 1fr; |
232 | | - gap: var(--space-lg); |
233 | | - } |
234 | | - |
235 | | - @media (min-width: 640px) { |
236 | | - .install-methods { |
237 | | - grid-template-columns: repeat(2, 1fr); |
238 | | - } |
239 | | - } |
240 | | - |
241 | | - .install-method h3 { |
242 | | - font-size: 0.875rem; |
243 | | - color: var(--color-text-muted); |
244 | | - margin-bottom: var(--space-sm); |
245 | | - text-transform: lowercase; |
246 | | - } |
247 | | - |
248 | | - .install-method pre { |
249 | | - margin: 0; |
250 | | - } |
251 | 269 | </style> |
0 commit comments