Skip to content

Commit 046749f

Browse files
committed
feat(website): implement dark mode toggle and mobile-first navigation
1 parent 165c159 commit 046749f

9 files changed

Lines changed: 1938 additions & 1147 deletions

File tree

β€Žwebsite/docs/ADR-001-dark-mode-mobile-first-hamburger.mdβ€Ž

Lines changed: 575 additions & 0 deletions
Large diffs are not rendered by default.

β€Žwebsite/src/layouts/Layout.astroβ€Ž

Lines changed: 248 additions & 86 deletions
Large diffs are not rendered by default.

β€Žwebsite/src/pages/docs.astroβ€Ž

Lines changed: 88 additions & 434 deletions
Large diffs are not rendered by default.

β€Žwebsite/src/pages/get-started.astroβ€Ž

Lines changed: 289 additions & 206 deletions
Large diffs are not rendered by default.

β€Žwebsite/src/pages/index.astroβ€Ž

Lines changed: 179 additions & 179 deletions
Large diffs are not rendered by default.

β€Žwebsite/src/pages/team.astroβ€Ž

Lines changed: 45 additions & 45 deletions
Original file line numberDiff line numberDiff line change
@@ -190,55 +190,55 @@ const categories = ["Strategic", "TDD", "Implementation", "Support", "Quality"];
190190
---
191191

192192
<Layout title="Meet the Team">
193-
<section class="py-20">
194-
<div class="max-w-6xl mx-auto px-6">
195-
<div class="text-center mb-16">
196-
<h1 class="font-display text-4xl lg:text-5xl font-bold text-stone-900 mb-6">
193+
<section class="py-12 sm:py-16 md:py-20">
194+
<div class="max-w-6xl mx-auto px-4 sm:px-6">
195+
<div class="text-center mb-10 sm:mb-16">
196+
<h1 class="font-display text-3xl sm:text-4xl lg:text-5xl font-bold text-[var(--color-text-primary)] mb-4 sm:mb-6">
197197
Meet the Team
198198
</h1>
199-
<p class="text-xl text-stone-600 max-w-3xl mx-auto">
199+
<p class="text-lg sm:text-xl text-[var(--color-text-secondary)] max-w-3xl mx-auto">
200200
13 specialized AI agents, each with distinct capabilities and responsibilities.
201201
Together, they form a complete development team.
202202
</p>
203203
</div>
204204

205205
{categories.map(category => (
206-
<div class="mb-16">
207-
<h2 class="font-display text-2xl font-bold text-stone-900 mb-8 flex items-center gap-3">
206+
<div class="mb-10 sm:mb-16">
207+
<h2 class="font-display text-xl sm:text-2xl font-bold text-[var(--color-text-primary)] mb-6 sm:mb-8 flex items-center gap-3">
208208
<span class={`w-3 h-3 rounded-full ${
209209
category === 'Strategic' ? 'bg-amber-500' :
210210
category === 'TDD' ? 'bg-red-500' :
211211
category === 'Implementation' ? 'bg-purple-500' :
212212
category === 'Support' ? 'bg-stone-500' :
213-
'bg-copper'
213+
'bg-[var(--color-brand-primary)]'
214214
}`}></span>
215215
{category}
216216
</h2>
217-
<div class="grid md:grid-cols-2 lg:grid-cols-3 gap-6">
217+
<div class="grid gap-4 sm:gap-6 sm:grid-cols-2 lg:grid-cols-3">
218218
{agents.filter(a => a.category === category).map(agent => (
219-
<div class="bg-white rounded-xl border border-stone-200 p-6 hover:border-copper hover:shadow-md transition-all">
220-
<div class="flex items-center gap-4 mb-4">
221-
<div class={`w-12 h-12 rounded-xl flex items-center justify-center text-2xl ${
222-
agent.color === 'amber' ? 'bg-amber-100' :
223-
agent.color === 'red' ? 'bg-red-100' :
224-
agent.color === 'green' ? 'bg-green-100' :
225-
agent.color === 'blue' ? 'bg-blue-100' :
226-
agent.color === 'purple' ? 'bg-purple-100' :
227-
agent.color === 'copper' ? 'bg-orange-100' :
228-
'bg-stone-100'
219+
<div class="bg-[var(--color-bg-surface)] rounded-xl border border-[var(--color-border-default)] p-5 sm:p-6 hover:border-[var(--color-brand-primary)] hover:shadow-md transition-all">
220+
<div class="flex items-center gap-3 sm:gap-4 mb-3 sm:mb-4">
221+
<div class={`w-10 h-10 sm:w-12 sm:h-12 rounded-xl flex items-center justify-center text-xl sm:text-2xl ${
222+
agent.color === 'amber' ? 'bg-amber-100 dark:bg-amber-900/30' :
223+
agent.color === 'red' ? 'bg-red-100 dark:bg-red-900/30' :
224+
agent.color === 'green' ? 'bg-green-100 dark:bg-green-900/30' :
225+
agent.color === 'blue' ? 'bg-blue-100 dark:bg-blue-900/30' :
226+
agent.color === 'purple' ? 'bg-purple-100 dark:bg-purple-900/30' :
227+
agent.color === 'copper' ? 'bg-orange-100 dark:bg-orange-900/30' :
228+
'bg-stone-100 dark:bg-stone-800'
229229
}`}>
230230
{agent.emoji}
231231
</div>
232232
<div>
233-
<h3 class="font-display text-lg font-semibold text-stone-900">{agent.name}</h3>
234-
<span class="text-xs text-stone-400 uppercase tracking-wide">{agent.category}</span>
233+
<h3 class="font-display text-base sm:text-lg font-semibold text-[var(--color-text-primary)]">{agent.name}</h3>
234+
<span class="text-xs text-[var(--color-text-muted)] uppercase tracking-wide">{agent.category}</span>
235235
</div>
236236
</div>
237-
<p class="text-stone-600 text-sm mb-4">{agent.description}</p>
237+
<p class="text-[var(--color-text-secondary)] text-sm mb-3 sm:mb-4">{agent.description}</p>
238238
<ul class="space-y-1">
239239
{agent.capabilities.map(cap => (
240-
<li class="flex items-center gap-2 text-sm text-stone-500">
241-
<svg class="w-4 h-4 text-copper shrink-0" fill="currentColor" viewBox="0 0 20 20">
240+
<li class="flex items-center gap-2 text-xs sm:text-sm text-[var(--color-text-muted)]">
241+
<svg class="w-4 h-4 text-[var(--color-brand-primary)] shrink-0" fill="currentColor" viewBox="0 0 20 20">
242242
<path fill-rule="evenodd" d="M10 18a8 8 0 100-16 8 8 0 000 16zm3.707-9.293a1 1 0 00-1.414-1.414L9 10.586 7.707 9.293a1 1 0 00-1.414 1.414l2 2a1 1 0 001.414 0l4-4z" clip-rule="evenodd"></path>
243243
</svg>
244244
{cap}
@@ -254,38 +254,38 @@ const categories = ["Strategic", "TDD", "Implementation", "Support", "Quality"];
254254
</section>
255255

256256
<!-- Workflow Section -->
257-
<section class="py-20 bg-white">
258-
<div class="max-w-6xl mx-auto px-6">
259-
<h2 class="font-display text-3xl font-bold text-stone-900 text-center mb-4">
257+
<section class="py-12 sm:py-16 md:py-20 bg-[var(--color-bg-surface)]">
258+
<div class="max-w-6xl mx-auto px-4 sm:px-6">
259+
<h2 class="font-display text-2xl sm:text-3xl font-bold text-[var(--color-text-primary)] text-center mb-3 sm:mb-4">
260260
How They Work Together
261261
</h2>
262-
<p class="text-stone-600 text-center max-w-2xl mx-auto mb-16">
262+
<p class="text-[var(--color-text-secondary)] text-center max-w-2xl mx-auto mb-10 sm:mb-16 text-sm sm:text-base">
263263
The boomerang protocol ensures tasks flow smoothly between agents with full traceability.
264264
</p>
265-
<div class="bg-stone-50 rounded-2xl p-8">
266-
<div class="grid md:grid-cols-4 gap-8">
265+
<div class="bg-[var(--color-bg-elevated)] rounded-2xl p-6 sm:p-8">
266+
<div class="grid grid-cols-2 md:grid-cols-4 gap-6 sm:gap-8">
267267
<div class="text-center">
268-
<div class="w-16 h-16 bg-amber-100 rounded-xl flex items-center justify-center mx-auto mb-4 text-2xl">πŸ“‹</div>
269-
<h3 class="font-semibold text-stone-900 mb-2">Planner</h3>
270-
<p class="text-sm text-stone-600">Creates Task Map</p>
271-
<div class="mt-4 text-copper">↓</div>
268+
<div class="w-12 h-12 sm:w-16 sm:h-16 bg-amber-100 dark:bg-amber-900/30 rounded-xl flex items-center justify-center mx-auto mb-3 sm:mb-4 text-xl sm:text-2xl">πŸ“‹</div>
269+
<h3 class="font-semibold text-[var(--color-text-primary)] mb-1 sm:mb-2 text-sm sm:text-base">Planner</h3>
270+
<p class="text-xs sm:text-sm text-[var(--color-text-secondary)]">Creates Task Map</p>
271+
<div class="mt-3 sm:mt-4 text-[var(--color-brand-primary)]">↓</div>
272272
</div>
273273
<div class="text-center">
274-
<div class="w-16 h-16 bg-blue-100 rounded-xl flex items-center justify-center mx-auto mb-4 text-2xl">πŸ”„</div>
275-
<h3 class="font-semibold text-stone-900 mb-2">Orchestrator</h3>
276-
<p class="text-sm text-stone-600">Delegates tasks</p>
277-
<div class="mt-4 text-copper">↓</div>
274+
<div class="w-12 h-12 sm:w-16 sm:h-16 bg-blue-100 dark:bg-blue-900/30 rounded-xl flex items-center justify-center mx-auto mb-3 sm:mb-4 text-xl sm:text-2xl">πŸ”„</div>
275+
<h3 class="font-semibold text-[var(--color-text-primary)] mb-1 sm:mb-2 text-sm sm:text-base">Orchestrator</h3>
276+
<p class="text-xs sm:text-sm text-[var(--color-text-secondary)]">Delegates tasks</p>
277+
<div class="mt-3 sm:mt-4 text-[var(--color-brand-primary)]">↓</div>
278278
</div>
279279
<div class="text-center">
280-
<div class="w-16 h-16 bg-purple-100 rounded-xl flex items-center justify-center mx-auto mb-4 text-2xl">πŸ’»</div>
281-
<h3 class="font-semibold text-stone-900 mb-2">Workers</h3>
282-
<p class="text-sm text-stone-600">Execute tasks</p>
283-
<div class="mt-4 text-copper">↓</div>
280+
<div class="w-12 h-12 sm:w-16 sm:h-16 bg-purple-100 dark:bg-purple-900/30 rounded-xl flex items-center justify-center mx-auto mb-3 sm:mb-4 text-xl sm:text-2xl">πŸ’»</div>
281+
<h3 class="font-semibold text-[var(--color-text-primary)] mb-1 sm:mb-2 text-sm sm:text-base">Workers</h3>
282+
<p class="text-xs sm:text-sm text-[var(--color-text-secondary)]">Execute tasks</p>
283+
<div class="mt-3 sm:mt-4 text-[var(--color-brand-primary)]">↓</div>
284284
</div>
285285
<div class="text-center">
286-
<div class="w-16 h-16 bg-green-100 rounded-xl flex items-center justify-center mx-auto mb-4 text-2xl">βœ…</div>
287-
<h3 class="font-semibold text-stone-900 mb-2">Boomerang</h3>
288-
<p class="text-sm text-stone-600">Returns results</p>
286+
<div class="w-12 h-12 sm:w-16 sm:h-16 bg-green-100 dark:bg-green-900/30 rounded-xl flex items-center justify-center mx-auto mb-3 sm:mb-4 text-xl sm:text-2xl">βœ…</div>
287+
<h3 class="font-semibold text-[var(--color-text-primary)] mb-1 sm:mb-2 text-sm sm:text-base">Boomerang</h3>
288+
<p class="text-xs sm:text-sm text-[var(--color-text-secondary)]">Returns results</p>
289289
</div>
290290
</div>
291291
</div>

0 commit comments

Comments
Β (0)