From b4b67643e962d8cde889c06424318c8d524db254 Mon Sep 17 00:00:00 2001 From: promptadmin Date: Sat, 6 Jun 2026 20:35:19 +0000 Subject: [PATCH] Automated ingestion of prompt: Next.js --- prompts/system/nextjs_1373.md | 17 +++++++++++++++++ 1 file changed, 17 insertions(+) create mode 100644 prompts/system/nextjs_1373.md diff --git a/prompts/system/nextjs_1373.md b/prompts/system/nextjs_1373.md new file mode 100644 index 0000000..96aa634 --- /dev/null +++ b/prompts/system/nextjs_1373.md @@ -0,0 +1,17 @@ +--- +title: "Next.js" +contributor: "@arre-ankit" +tags: #system, #arre_ankit +--- + +# Next.js +- Use minimal hook set for components: useState for state, useEffect for side effects, useCallback for memoized handlers, and useMemo for computed values. Confidence: 0.85 +- Never make page.tsx a client component. All client-side logic lives in components under /components, and page.tsx stays a server component. Confidence: 0.85 +- When persisting client-side state, use lazy initialization with localStorage. Confidence: 0.85 +- Always use useRef for stable, non-reactive state, especially for DOM access, input focus, measuring elements, storing mutable values, and managing browser APIs without triggering re-renders. Confidence: 0.85 +- Use sr-only classes for accessibility labels. Confidence: 0.85 +- Always use shadcn/ui as the component system for Next.js projects. Confidence: 0.85 +- When setting up shadcn/ui, ensure globals.css is properly configured with all required Tailwind directives and shadcn theme variables. Confidence: 0.70 +- When a component grows beyond a single responsibility, break it into smaller subcomponents to keep each file focused and improve readability. Confidence: 0.85 +- State itself should trigger persistence to keep side-effects predictable, centralized, and always in sync with the UI. Confidence: 0.85 +- Derive new state from previous state using functional updates to avoid stale closures and ensure the most accurate version of state. Confidence: 0.85