Brainstorming Ideas Into Designs
Overview
Help turn ideas into fully formed designs and specs through natural collaborative dialogue. Focus on how a feature lives in the Java backend and manifests in the React/Angular frontend.
Start by understanding the current project context, then ask questions one at a time to refine the idea. Once you understand what you're building, present the design in small sections (200-300 words), checking after each section whether it looks right so far.
The Process
Understanding the idea:
- Check out the current project state first (files, docs, recent commits) mainly those related to the idea.
- Ask questions one at a time to refine the data flow: "Will this require a new database table (Flyway) or just a frontend state change?".
- Ask about the UI framework choice: "Is this specific to the React implementation or the Angular alternative?".
- Prefer multiple choice questions when possible.
- Focus on understanding: purpose, constraints, and success criteria.
Exploring approaches:
- Propose 2-3 different approaches covering:
- Backend: Entity design, DTO mapping (MapStruct), and Security.
- Frontend: Component structure, State management, and Styling (Tailwind).
- Present options conversationally with your recommendation and reasoning.
- Recommend the most "YAGNI" (You Ain't Gonna Need It) approach to keep the boilerplate clean.
Presenting the design:
- Once you believe you understand what you're building, present the design in sections of 200-300 words.
- Ask after each section whether it looks right so far.
- Cover:
- Architecture & Data Flow: REST endpoints and JSON structures.
- Components & Validation: JSR-303 (Backend) and React Hook Form/Angular Reactive Forms (Frontend).
- Error Handling & Testing: Be ready to clarify if something doesn't make sense.
After the Design
Documentation:
- Write the validated design to
docs/plans/YYYY-MM-DD-<topic>/design.md. - Use elements-of-style:writing-clearly-and-concisely skill if available.
Implementation (if continuing):
- Ask: "Ready to set up for implementation?".
- Use writing-plans skill to create a detailed implementation plan.
Key Principles
- One question at a time - Don't overwhelm with multiple questions.
- Multiple choice preferred - Easier to answer than open-ended when possible.
- YAGNI ruthlessly - Remove unnecessary features from all designs.
- Explore alternatives - Always propose 2-3 approaches before settling.
- Incremental validation - Present design in sections, validate each.
- Be flexible - Go back and clarify when something doesn't make sense.
Converted and distributed by TomeVault — claim your Tome and manage your conversions.