nycraves
Complete development guide for the NYCRAVES codebase. Use this skill when creating any new code - components, pages, features, data functions, or utilities. Ensures visual consistency (brutalist dark theme), code consistency (established patterns), and proper Next.js 16 architecture (caching, Server Components, loading states). Triggers on (1) Creating new components, (2) Building new pages, (3) Adding features, (4) Writing data functions, (5) Questions about patterns or conventions.
When & Why to Use This Skill
The NYCRAVES Development Guide is a specialized Claude skill designed to maintain architectural integrity and visual consistency within the NYCRAVES codebase. It streamlines the development process by enforcing Next.js 16 best practices, including Server Components, advanced caching strategies, and a unique brutalist dark-mode design system. By providing instant access to established patterns and conventions, it helps developers write clean, performant, and standardized code for components, data functions, and utilities.
Use Cases
- 1. Component & Page Creation: Generate new UI elements and layouts that strictly follow the project's brutalist design tokens and TypeScript prop interfaces.
- 2. Next.js 16 Optimization: Implement high-performance data fetching using 'use cache' directives, cache tags, and proper Server/Client component separation.
- 3. Code Standardization: Ensure project-wide consistency by applying barrel exports, centralized utility management, and standardized import orders.
- 4. Technical Onboarding & Reference: Quickly resolve questions about specific project conventions, anti-patterns, and architectural layouts to reduce development friction.
| name | nycraves |
|---|---|
| description | "Complete development guide for the NYCRAVES codebase. Use this skill when creating any new code - components, pages, features, data functions, or utilities. Ensures visual consistency (brutalist dark theme), code consistency (established patterns), and proper Next.js 16 architecture (caching, Server Components, loading states). Triggers on (1) Creating new components, (2) Building new pages, (3) Adding features, (4) Writing data functions, (5) Questions about patterns or conventions." |
NYCRAVES Development Guide
Complete patterns and conventions for the NYCRAVES NYC rave events app.
What This Skill Covers
- UI Design System - Brutalist dark-mode aesthetic
- Component Patterns - Structure, naming, exports
- Architecture - Data fetching, caching, utilities
- Next.js 16 - Cache Components, Server/Client patterns
Core Principles
- Consistency over creativity - Match existing patterns exactly
- Server Components by default - Only use
'use client'when necessary - Centralized utilities - Never duplicate functions across files
- Centralized constants - Import from
lib/constants/, don't hardcode - Barrel exports always - Every folder needs
index.tswith named exports - Cache everything - Data functions use
'use cache'+cacheTag+cacheLife
Quick Reference
Creating a New Component
- Place in
/components/[domain]/ - Add
'use client'only if using hooks/browser APIs - Define TypeScript interface for props
- Follow design tokens from design-tokens.md
- Match structure from component-patterns.md
- Add named export to domain's
index.ts
Creating a Data Function
- Place in
/lib/data/[domain].ts - Add
'use cache'directive - Add
cacheTag('[domain]')for invalidation - Add
cacheLife('hours')or'days' - Export from
lib/data/index.ts
See architecture-patterns.md for full examples.
Creating a New Utility
- Check if similar function exists in
lib/utils.ts - If reusable (2+ files), add to
lib/utils.ts - Add JSDoc comment explaining purpose
- Import from
@/lib/utilseverywhere
Reference Files
Load these as needed for detailed patterns and examples:
- design-tokens.md - Typography, colors, spacing, borders, interactive states
- component-patterns.md - File organization, component structure, common UI patterns, page layouts
- architecture-patterns.md - Data fetching, caching, utilities, constants, import order, anti-patterns