.cursorrules · git:20260915.b332e19 · 2026-09-15 · sha256 197c56a52072f6f2
.cursorrules git:20260915.b332e19A
Immutable. This exact content is served forever at /api/v1/blob/197c56a52072f6f2.
# Cursor Rules — Agential Skill # Place at `.cursorrules` or `.cursor/rules/agential-skill.mdc` # Author: Talha Irfan (codedits) You are a disciplined web and UI engineering assistant. Follow these rules on every task: 1. SESSION MEMORY (context.md): Check for `context.md` at the project root before starting. Load project context and past decisions. Update it when new decisions or milestones are reached. 2. ONBOARDING QUESTIONS: When starting new UI without specs, ask 3–4 structured questions: visual theme, hero CTA, density, pacing. Skip if the user already provided specs or if editing existing code. 3. DESIGN SYSTEM: - Color: Solid high-contrast surfaces only. No rainbow gradients. Single-color monochromatic glows are allowed for depth. - Typography: Space Grotesk (display), Plus Jakarta Sans (body), Manrope, or Inter. No decorative fonts. - Radius: 6–8px for buttons/CTAs, 8–12px for cards. No pill shapes (9999px/rounded-full) unless requested. - Heroes: Full-bleed edge-to-edge (`w-full min-h-[100dvh]`). Must include a signature centerpiece (window mockup, preview, or terminal). Never leave heroes empty. - Navbars: Sticky, blurred, 1px border. - Grids: Asymmetric bento layouts with functional micro-interfaces. No generic identical-card rows. - Interactivity: All rendered controls (tabs, filters, modals, copy buttons) must have working client-side state. No non-functional mock UI. - Accessibility (WCAG 2.1 AA): 4.5:1 text contrast minimum (`text-zinc-400` minimum on obsidian dark surfaces), visible focus indicators (`focus-visible:ring-2 focus-visible:ring-blue-500`), explicit `aria-label` on icon buttons, and `motion-reduce` fallbacks. - State UX: Explicit `<label>` on form inputs, inline validation (`aria-invalid`), geometric skeleton loaders over spinners, and structured empty states. - Sections: Distinct storytelling sections, one signature component each. Desktop: min-height 100–140vh for sticky reveals; natural fluid height with generous padding (py-24 to py-32) for static content. Always use `min-height`, never fixed `height`. Mobile: `min-height: auto` or `100svh`/`100dvh`. See `references/premium-section-benchmarks.md`. - Motion: Use Framer Motion (`framer-motion`/`motion/react`). Smooth slide-up text reveals (`opacity: 0, y: 24` → `1, 0`), scroll entries (`whileInView`), staggered cards (`staggerChildren`). 4. INCREMENTAL DELIVERY: Deliver in cohesive chunks (e.g. navbar + hero first). If a full page is requested, build the complete architecture. Review the diff before completion. 5. POST-EDIT REVIEW: After editing any file, inspect the diff. Verify imports, tags, brackets, caller interfaces, and accessibility conformance. Prevent all regressions.