Newer
Older
Claude_Test / docs / superpowers / specs / review-2026-03-21-geekbrain-site.md

GeekBrain.io Website - Specification Review & consolidation

Comparison of Existing Specs

Two specification documents exist:

  1. 2026-03-21-geekbrain-vc-webpage-design.md (older)
  2. 2026-03-21-vc-fund-webpage-design.md (newer)

Status: Both are drafts. Need consolidation and refinement before implementation.


Key Differences & Inconsistencies

1. Component Interface Definitions

Component Spec 1 Definition Spec 2 Definition Status
GlitchText `as?: 'h1' 'h2' 'h3'` `as?: 'h1' 'h2' 'h3' 'span'` Spec 2 more complete
GlowButton/Link GlowLink component GlowButton component (mentioned) CONFLICT
ParticleBackground No custom props defined Internal config only Both vague

2. File Structure

Spec 1:

geekbrain-site/
├── app/
│   ├── layout.tsx
│   ├── page.tsx
│   └── globals.css
├── components/ (6 components)
├── tailwind.config.ts
├── tsconfig.json
├── package.json
└── README.md

Spec 2:

geekbrain-site/
├── app/
│   ├── layout.tsx
│   ├── page.tsx
│   └── globals.css
├── components/ (6 components - note: GlowButton vs GlowLink)
├── tailwind.config.ts
├── next.config.js  ← different
└── package.json

Issue: next.config.js vs tsconfig.json - both may be needed.

3. Typography

Spec 1:

  • Headings: Space Grotesk (600-700)
  • Body: Inter (400)
  • Code: JetBrains Mono (optional)

Spec 2:

  • Mentions Space Grotesk and Inter but no weights specified

Gap: Need to specify exact font weights and loading strategy.

4. Animation Details

Spec 1 has more detail:

  • Glitch: "2.5s animation loop: 70% stable, 30% glitching"
  • Scroll animations: IntersectionObserver with staggered timing
  • Performance notes: GPU-accelerated properties

Spec 2 has: High-level animation strategy table only.

5. Accessibility

Spec 1 includes full Accessibility section (7 items) Spec 2 does NOT mention accessibility at all

Gap: This is critical - should be included.

6. Performance Considerations

Spec 1 includes:

  • Particle system pause when tab hidden
  • Use of CSS transforms/opacity
  • Lazy load fonts via next/font
  • Static generation note

Spec 2 includes:

  • Similar but slightly different wording
  • Also mentions IntersectionObserver (not scroll listeners)

7. Copy/Content

Spec 1 provides draft copy for About section Spec 2 provides slightly different draft copy

Difference:

  • Spec 1: "decades of technical expertise"
  • Spec 2: "capital, network, and strategic support"

8. Missing Elements

  • Next.js config: next.config.js content not specified
  • Environment variables: None mentioned
  • Testing strategy: Not covered
  • SEO metadata: Not specified
  • Favicon/OG images: Not mentioned
  • Responsive breakpoints: Not detailed
  • Error handling: Not discussed
  • Build configuration: Minimal

1. Consolidate Files

Recommended: Keep one master spec and archive the other as historical.

  • Use the more detailed spec (2026-03-21-geekbrain-vc-webpage-design.md) as base
  • Incorporate missing elements from the other

2. Resolve Component Naming

Decision needed: GlowLink or GlowButton?

Recommendation: Keep GlowLink for social links, consider separate GlowButton if call-to-action buttons are needed. Since current design only needs social link, use GlowLink for now.

3. Add Missing Sections

Needed additions to spec:

## Next.js Configuration
## Environment & API Keys (if any)
## SEO & Metadata
## Responsive Design Breakpoints
## Testing Strategy
## Browser Support
## Deployment Checklist

4. Clarify Particle Configuration

Current specs vague - need specific:

  • tsparticles preset or custom config file?
  • Exact particle count, speed values, colors (hex codes)
  • Interaction details (repel/attract strength)

5. Define Tailwind Config

Should specify:

  • Custom color palette (extend theme.colors)
  • Custom glow utilities (glow-blue, glow-cyan)
  • Animation keyframes (pulse-glow)

6. Accessibility Section (MANDATORY)

Add comprehensive A11y requirements:

  • Proper heading hierarchy
  • Focus management
  • Reduced motion preferences
  • Color contrast ratios (WCAG AA minimum)
  • Screen reader testing

7. Specify Font Loading

Recommend: Use next/font with:

  • SpaceGrotesk for headings (weights: 600, 700)
  • Inter for body (weights: 400, maybe 500)
  • Fallback fonts: system-sans

8. Performance Budget

Add specific targets:

  • Lighthouse score goals: Performance >90, Accessibility >90
  • Bundle size limits
  • Image optimization strategy (none needed if no images)
  • Lazy loading for below-the-fold content

9. File-by-File Detailed Specs

Current high-level structure is good, but add:

  • Exact imports needed in each file
  • PropTypes or TypeScript interfaces
  • CSS modules vs Tailwind approach
  • Test file locations

10. Graphic Assets

Specify if any assets needed:

  • SVG icons (LinkedIn)
  • Logo (GeekBrain.io wordmark)
  • Favicon sizes
  • No images currently planned

Action Items

  1. Choose primary spec - Which version do you prefer as base?
  2. Decide on GlowLink vs GlowButton
  3. Confirm About section copy - which version, or merge?
  4. Specify exact particle config (need tsparticles JSON)
  5. Define responsive breakpoints (mobile-first: 640px, 768px, 1024px, 1280px)
  6. Add Next.js config details (any special config needed?)
  7. Confirm font sources - Google Fonts? Local? CDN?

Questions for You

  1. Should I consolidate both specs into a single, comprehensive, refined specification document?
  2. Which About section copy do you prefer, or should I merge them?
  3. Do you have specific particle background configuration preferences, or should I use the tsparticles default with blue theme tweaks?
  4. Are there any brand guidelines (logo files, specific colors, fonts) that should override the draft specs?
  5. Do you need any backend functionality (contact form, API routes) or is this purely static?

Please answer these so I can create the final, implementation-ready specification.