You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
feat(website): move AI + Inspirations after the packages, drop 'betterave'
Lead with the packages (the core of btravstack) — the 'In the age of AI'
and 'Inspirations' sections now follow them rather than preceding them.
Nav reordered to match (Philosophy · Projects · Why now). Remove the
'betterave 🇫🇷' tag from the footer (landing + config copyright).
Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
<buttontype="button"class="btv-toggle":title="isDark ? 'Switch to light' : 'Switch to dark'":aria-label="isDark ? 'Switch to light theme' : 'Switch to dark theme'":aria-pressed="isDark"@click="toggleAppearance">
<h2class="btv-h2 btv-ai-h2">Written with AI. Judged by the compiler.</h2>
172
-
<pclass="btv-section-lead">None of this was invented for AI — AI just raised the stakes. When an agent writes the code, expressiveness and fail-fast stop being a matter of taste and become infrastructure.</p>
173
-
<divclass="btv-ai-grid">
174
-
<divv-for="c in aiCards":key="c.title"class="btv-ai-card">
175
-
<h3>{{ c.title }}</h3>
176
-
<p>{{ c.body }}</p>
177
-
</div>
178
-
</div>
179
-
</div>
180
-
</section>
181
-
182
-
<sectionclass="btv-section btv-insp">
183
-
<pclass="btv-eyebrow">Inspirations</p>
184
-
<h2class="btv-h2 btv-insp-h2">Standing on good shoulders.</h2>
185
-
<pclass="btv-section-lead">btravstack borrows its instincts from the libraries that made TypeScript feel this way in the first place.</p>
186
-
<divclass="btv-insp-grid">
187
-
<av-for="i in inspirations":key="i.name":href="i.href"target="_blank"rel="noopener"class="pcard btv-insp-card">
188
-
<spanclass="btv-insp-name">{{ i.name }}</span>
189
-
<pclass="btv-insp-body">{{ i.body }}</p>
190
-
</a>
191
-
</div>
192
-
</section>
193
-
194
168
<sectionid="projects"class="btv-section">
195
169
<pclass="btv-eyebrow">The packages</p>
196
170
<h2class="btv-h2"style="margin-bottom:30px">Four libraries, one stack.</h2>
@@ -230,6 +204,32 @@ onMounted(() => {
230
204
</div>
231
205
</section>
232
206
207
+
<sectionid="ai"class="btv-section btv-ai">
208
+
<divclass="btv-ai-panel">
209
+
<pclass="btv-eyebrow">In the age of AI</p>
210
+
<h2class="btv-h2 btv-ai-h2">Written with AI. Judged by the compiler.</h2>
211
+
<pclass="btv-section-lead">None of this was invented for AI — AI just raised the stakes. When an agent writes the code, expressiveness and fail-fast stop being a matter of taste and become infrastructure.</p>
212
+
<divclass="btv-ai-grid">
213
+
<divv-for="c in aiCards":key="c.title"class="btv-ai-card">
214
+
<h3>{{ c.title }}</h3>
215
+
<p>{{ c.body }}</p>
216
+
</div>
217
+
</div>
218
+
</div>
219
+
</section>
220
+
221
+
<sectionclass="btv-section btv-insp">
222
+
<pclass="btv-eyebrow">Inspirations</p>
223
+
<h2class="btv-h2 btv-insp-h2">Standing on good shoulders.</h2>
224
+
<pclass="btv-section-lead">btravstack borrows its instincts from the libraries that made TypeScript feel this way in the first place.</p>
225
+
<divclass="btv-insp-grid">
226
+
<av-for="i in inspirations":key="i.name":href="i.href"target="_blank"rel="noopener"class="pcard btv-insp-card">
227
+
<spanclass="btv-insp-name">{{ i.name }}</span>
228
+
<pclass="btv-insp-body">{{ i.body }}</p>
229
+
</a>
230
+
</div>
231
+
</section>
232
+
233
233
<sectionclass="btv-section btv-cta-wrap">
234
234
<divclass="btv-cta-banner">
235
235
<h2class="btv-cta-h2">Build backends you can trust the types of.</h2>
0 commit comments