feat(web): implement schedule editor in MaintenancePoliciesTab
CI / changes (push) Successful in 8s
CI / commitlint (push) Has been skipped
CI / openapi (push) Has been skipped
CI / web (push) Successful in 31s
CI / go (push) Successful in 51s
CI / bird2 (push) Successful in 15s
CI / release (push) Successful in 3m48s
CI / changes (push) Successful in 8s
CI / commitlint (push) Has been skipped
CI / openapi (push) Has been skipped
CI / web (push) Successful in 31s
CI / go (push) Successful in 51s
CI / bird2 (push) Successful in 15s
CI / release (push) Successful in 3m48s
Enhanced the MaintenancePoliciesTab by integrating a schedule editor for maintenance policies. Users can now select schedule modes, input custom cron expressions, and dynamically update the schedule preview. This update improves the user interface and experience for managing maintenance schedules.
This commit is contained in:
@@ -0,0 +1,187 @@
|
||||
---
|
||||
description: creative phase architecture
|
||||
globs: creative-phase-architecture.md
|
||||
alwaysApply: false
|
||||
---
|
||||
|
||||
# CREATIVE PHASE: ARCHITECTURE DESIGN
|
||||
|
||||
> **TL;DR:** This document provides structured guidance for architectural design decisions during creative phases, ensuring comprehensive evaluation of options and clear documentation of architectural choices.
|
||||
|
||||
## 🏗️ ARCHITECTURE DESIGN WORKFLOW
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
Start["Architecture<br>Design Start"] --> Req["1. Requirements<br>Analysis"]
|
||||
Req --> Comp["2. Component<br>Identification"]
|
||||
Comp --> Options["3. Architecture<br>Options"]
|
||||
Options --> Eval["4. Option<br>Evaluation"]
|
||||
Eval --> Decision["5. Decision &<br>Documentation"]
|
||||
Decision --> Valid["6. Validation &<br>Verification"]
|
||||
|
||||
style Start fill:#4da6ff,stroke:#0066cc,color:white
|
||||
style Req fill:#ffa64d,stroke:#cc7a30,color:white
|
||||
style Comp fill:#4dbb5f,stroke:#36873f,color:white
|
||||
style Options fill:#d94dbb,stroke:#a3378a,color:white
|
||||
style Eval fill:#4dbbbb,stroke:#368787,color:white
|
||||
style Decision fill:#d971ff,stroke:#a33bc2,color:white
|
||||
style Valid fill:#ff71c2,stroke:#c23b8a,color:white
|
||||
```
|
||||
|
||||
## 📋 ARCHITECTURE DECISION TEMPLATE
|
||||
|
||||
```markdown
|
||||
# Architecture Decision Record
|
||||
|
||||
## Context
|
||||
- System Requirements:
|
||||
- [Requirement 1]
|
||||
- [Requirement 2]
|
||||
- Technical Constraints:
|
||||
- [Constraint 1]
|
||||
- [Constraint 2]
|
||||
|
||||
## Component Analysis
|
||||
- Core Components:
|
||||
- [Component 1]: [Purpose/Role]
|
||||
- [Component 2]: [Purpose/Role]
|
||||
- Interactions:
|
||||
- [Interaction 1]
|
||||
- [Interaction 2]
|
||||
|
||||
## Architecture Options
|
||||
### Option 1: [Name]
|
||||
- Description: [Brief description]
|
||||
- Pros:
|
||||
- [Pro 1]
|
||||
- [Pro 2]
|
||||
- Cons:
|
||||
- [Con 1]
|
||||
- [Con 2]
|
||||
- Technical Fit: [High/Medium/Low]
|
||||
- Complexity: [High/Medium/Low]
|
||||
- Scalability: [High/Medium/Low]
|
||||
|
||||
### Option 2: [Name]
|
||||
[Same structure as Option 1]
|
||||
|
||||
## Decision
|
||||
- Chosen Option: [Option name]
|
||||
- Rationale: [Explanation]
|
||||
- Implementation Considerations:
|
||||
- [Consideration 1]
|
||||
- [Consideration 2]
|
||||
|
||||
## Validation
|
||||
- Requirements Met:
|
||||
- [✓] Requirement 1
|
||||
- [✓] Requirement 2
|
||||
- Technical Feasibility: [Assessment]
|
||||
- Risk Assessment: [Evaluation]
|
||||
```
|
||||
|
||||
## 🎯 ARCHITECTURE EVALUATION CRITERIA
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
subgraph "EVALUATION CRITERIA"
|
||||
C1["Scalability"]
|
||||
C2["Maintainability"]
|
||||
C3["Performance"]
|
||||
C4["Security"]
|
||||
C5["Cost"]
|
||||
C6["Time to Market"]
|
||||
end
|
||||
|
||||
style C1 fill:#4dbb5f,stroke:#36873f,color:white
|
||||
style C2 fill:#ffa64d,stroke:#cc7a30,color:white
|
||||
style C3 fill:#d94dbb,stroke:#a3378a,color:white
|
||||
style C4 fill:#4dbbbb,stroke:#368787,color:white
|
||||
style C5 fill:#d971ff,stroke:#a33bc2,color:white
|
||||
style C6 fill:#ff71c2,stroke:#c23b8a,color:white
|
||||
```
|
||||
|
||||
## 📊 ARCHITECTURE VISUALIZATION TEMPLATES
|
||||
|
||||
### Component Diagram Template
|
||||
```mermaid
|
||||
graph TD
|
||||
subgraph "SYSTEM ARCHITECTURE"
|
||||
C1["Component 1"]
|
||||
C2["Component 2"]
|
||||
C3["Component 3"]
|
||||
|
||||
C1 -->|"Interface 1"| C2
|
||||
C2 -->|"Interface 2"| C3
|
||||
end
|
||||
|
||||
style C1 fill:#4dbb5f,stroke:#36873f,color:white
|
||||
style C2 fill:#ffa64d,stroke:#cc7a30,color:white
|
||||
style C3 fill:#d94dbb,stroke:#a3378a,color:white
|
||||
```
|
||||
|
||||
### Data Flow Template
|
||||
```mermaid
|
||||
sequenceDiagram
|
||||
participant C1 as Component 1
|
||||
participant C2 as Component 2
|
||||
participant C3 as Component 3
|
||||
|
||||
C1->>C2: Request
|
||||
C2->>C3: Process
|
||||
C3-->>C2: Response
|
||||
C2-->>C1: Result
|
||||
```
|
||||
|
||||
## ✅ VERIFICATION CHECKLIST
|
||||
|
||||
```markdown
|
||||
## Architecture Design Verification
|
||||
- [ ] All system requirements addressed
|
||||
- [ ] Component responsibilities defined
|
||||
- [ ] Interfaces specified
|
||||
- [ ] Data flows documented
|
||||
- [ ] Security considerations addressed
|
||||
- [ ] Scalability requirements met
|
||||
- [ ] Performance requirements met
|
||||
- [ ] Maintenance approach defined
|
||||
|
||||
## Implementation Readiness
|
||||
- [ ] All components identified
|
||||
- [ ] Dependencies mapped
|
||||
- [ ] Technical constraints documented
|
||||
- [ ] Risk assessment completed
|
||||
- [ ] Resource requirements defined
|
||||
- [ ] Timeline estimates provided
|
||||
```
|
||||
|
||||
## 🔄 ARCHITECTURE REVIEW PROCESS
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
subgraph "REVIEW PROCESS"
|
||||
R1["Technical<br>Review"]
|
||||
R2["Security<br>Review"]
|
||||
R3["Performance<br>Review"]
|
||||
R4["Final<br>Approval"]
|
||||
end
|
||||
|
||||
R1 --> R2 --> R3 --> R4
|
||||
|
||||
style R1 fill:#4dbb5f,stroke:#36873f,color:white
|
||||
style R2 fill:#ffa64d,stroke:#cc7a30,color:white
|
||||
style R3 fill:#d94dbb,stroke:#a3378a,color:white
|
||||
style R4 fill:#4dbbbb,stroke:#368787,color:white
|
||||
```
|
||||
|
||||
## 🔄 DOCUMENT MANAGEMENT
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
Current["Current Document"] --> Active["Active:<br>- creative-phase-architecture.md"]
|
||||
Current --> Related["Related:<br>- creative-phase-enforcement.md<br>- planning-comprehensive.md"]
|
||||
|
||||
style Current fill:#4da6ff,stroke:#0066cc,color:white
|
||||
style Active fill:#4dbb5f,stroke:#36873f,color:white
|
||||
style Related fill:#ffa64d,stroke:#cc7a30,color:white
|
||||
```
|
||||
@@ -0,0 +1,232 @@
|
||||
---
|
||||
description: UI/UX Design Guidelines and Process for the Creative Phase
|
||||
globs: creative-phase-uiux.mdc
|
||||
alwaysApply: false
|
||||
---
|
||||
Okay, I've updated the style guide location to `memory-bank/style-guide.md` and will provide the entire content for the new `creative-phase-uiux.md` file within a single markdown code block for easy copying. I've also reviewed the Mermaid diagrams to ensure they are correctly formatted.
|
||||
|
||||
# Creative Phase: UI/UX Design Guidelines
|
||||
|
||||
**Document Purpose:** This document outlines the structured approach for UI/UX design decisions during the Creative Phase. It ensures user-centric designs, exploration of multiple options, adherence to a style guide (if available or created), and clear documentation of UI/UX choices, aligning with React/Tailwind best practices.
|
||||
|
||||
## 🎨 UI/UX Design Philosophy
|
||||
|
||||
* **User-Centricity**: Designs must prioritize the user's needs, goals, and context.
|
||||
* **Clarity & Simplicity**: Interfaces should be intuitive and easy to understand.
|
||||
* **Consistency**: Maintain consistency with established design patterns, project-specific styles, and platform conventions.
|
||||
* **Accessibility (A11y)**: Adhere to WCAG guidelines to ensure usability for people with disabilities.
|
||||
* **Efficiency**: Enable users to accomplish tasks with minimal effort.
|
||||
* **Feedback**: Provide clear and timely feedback for user actions.
|
||||
* **Visual Cohesion**: Ensure new UI elements align with the existing or defined project style guide.
|
||||
|
||||
## 🌊 UI/UX Design Workflow
|
||||
|
||||
This workflow guides the UI/UX design process within the Creative Phase, incorporating a crucial style guide check.
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
Start["UI/UX Design Start"] --> StyleGuideCheck["0. Style Guide Check<br>Attempt to locate 'memory-bank/style-guide.md' or user-provided path."]
|
||||
StyleGuideCheck --> HasStyleGuide{"Style Guide<br>Available/Loaded?"}
|
||||
|
||||
HasStyleGuide -- "Yes" --> Understand["Understand User & Task<br>(Personas, User Stories, Requirements)"]
|
||||
HasStyleGuide -- "No" --> PromptCreateStyleGuide["Prompt User: Create/Link Style Guide?"]
|
||||
|
||||
PromptCreateStyleGuide --> UserResponse{"User Opts to Create/Link?"}
|
||||
UserResponse -- "Yes, Create" --> DefineStyleGuideSubProcess["SUB-PROCESS:Define Basic Style Guide"]
|
||||
UserResponse -- "Yes, Link" --> LinkStyleGuide["User provides path/URL.<br>Load Style Guide."]
|
||||
UserResponse -- "No" --> Understand_NoGuide["Understand User & Task<br>(Proceeding without Style Guide - WARN user of inconsistencies)"]
|
||||
|
||||
DefineStyleGuideSubProcess --> StyleGuideCreated["Basic 'memory-bank/style-guide.md' Created/Defined"]
|
||||
StyleGuideCreated --> Understand
|
||||
LinkStyleGuide --> Understand
|
||||
Understand_NoGuide --> InfoArch_NoGuide["Information Architecture"]
|
||||
|
||||
Understand --> InfoArch["Information Architecture<br>(Structure, Navigation, Content Hierarchy)"]
|
||||
InfoArch --> Interaction["Interaction Design<br>(User Flows, Wireframes, Prototypes - Conceptual)"]
|
||||
Interaction --> VisualDesign["Visual Design<br>(APPLY STYLE GUIDE, Leverage React/Tailwind, Mockups - Conceptual)"]
|
||||
VisualDesign --> Options["Explore UI/UX Options<br>(Generate 2-3 distinct solutions)"]
|
||||
Options --> Evaluate["Evaluate Options<br>(Usability, Feasibility, A11y, Aesthetics, <b>Style Guide Alignment</b>)"]
|
||||
Evaluate --> Decision["Make & Document UI/UX Decision<br>(Use Optimized Creative Template)"]
|
||||
Decision --> Validate["Validate Against Requirements, Principles & <b>Style Guide</b>"]
|
||||
Validate --> UIUX_Complete["UI/UX Design Complete for Component"]
|
||||
|
||||
InfoArch_NoGuide --> Interaction_NoGuide["Interaction Design"]
|
||||
Interaction_NoGuide --> VisualDesign_NoGuide["Visual Design<br>(Leverage React/Tailwind, Aim for Internal Consistency)"]
|
||||
VisualDesign_NoGuide --> Options_NoGuide["Explore UI/UX Options"]
|
||||
Options_NoGuide --> Evaluate_NoGuide["Evaluate Options<br>(Usability, Feasibility, A11y, Aesthetics)"]
|
||||
Evaluate_NoGuide --> Decision_NoGuide["Make & Document UI/UX Decision"]
|
||||
Decision_NoGuide --> Validate_NoGuide["Validate Against Requirements & Principles"]
|
||||
Validate_NoGuide --> UIUX_Complete
|
||||
|
||||
style Start fill:#4da6ff,stroke:#0066cc,color:white
|
||||
style StyleGuideCheck fill:#ab87ff,stroke:#7d5bbe,color:white
|
||||
style HasStyleGuide fill:#ab87ff,stroke:#7d5bbe,color:white
|
||||
style PromptCreateStyleGuide fill:#ffcb6b,stroke:#f9a825,color:black
|
||||
style UserResponse fill:#ffcb6b,stroke:#f9a825,color:black
|
||||
style DefineStyleGuideSubProcess fill:#c3e88d,stroke:#82a75c,color:black
|
||||
style LinkStyleGuide fill:#c3e88d,stroke:#82a75c,color:black
|
||||
style StyleGuideCreated fill:#c3e88d,stroke:#82a75c,color:black
|
||||
style VisualDesign fill:#4dbbbb,stroke:#368787,color:white
|
||||
style Evaluate fill:#d971ff,stroke:#a33bc2,color:white
|
||||
style Validate fill:#71c2ff,stroke:#3b8aa3,color:white
|
||||
style Understand_NoGuide fill:#ff8a80,stroke:#c85a54,color:black
|
||||
style UIUX_Complete fill:#5fd94d,stroke:#3da336,color:white
|
||||
```
|
||||
|
||||
## 📖 Style Guide Integration
|
||||
|
||||
A consistent visual style is paramount for good UI/UX. This section details how to reference an existing style guide or prompt for its creation. **The primary location for the style guide in this system will be `memory-bank/style-guide.md`.**
|
||||
|
||||
### Step 0: Style Guide Check & Handling
|
||||
|
||||
**A. Checking for an Existing Style Guide:**
|
||||
1. **Primary Location Check**: The system **MUST** first look for the style guide at this specific path:
|
||||
* `memory-bank/style-guide.md`
|
||||
2. **Secondary Check (User Prompt)**: If `memory-bank/style-guide.md` is not found, the system **MUST** prompt the user:
|
||||
```
|
||||
"I could not find 'memory-bank/style-guide.md'.
|
||||
Is there an existing style guide at a different location, or a URL I should reference?
|
||||
If yes, please provide the full path or URL.
|
||||
Otherwise, we can create a basic 'memory-bank/style-guide.md' now, or you can opt to proceed without one (though this is not recommended for new UI development)."
|
||||
```
|
||||
|
||||
**B. Using an Existing Style Guide:**
|
||||
* If `memory-bank/style-guide.md` is found or an alternative path/URL is provided by the user:
|
||||
* Load its content into context.
|
||||
* **CRITICAL**: All subsequent UI/UX design proposals (colors, typography, spacing, component appearance) **MUST** adhere strictly to this guide.
|
||||
* When evaluating options (Step 6 of the workflow), "Adherence to Style Guide" **MUST** be a key evaluation criterion.
|
||||
|
||||
**C. If No Style Guide Exists or is Provided (User Interaction):**
|
||||
* If no style guide is found or linked by the user, the system **MUST** strongly recommend creating one:
|
||||
```
|
||||
"No style guide has been referenced. For optimal UI consistency and development efficiency, creating 'memory-bank/style-guide.md' is highly recommended."
|
||||
|
||||
"Would you like to:"
|
||||
"1. Create a basic 'memory-bank/style-guide.md' now? (I can help you define core elements like colors, typography, and spacing based on observations or your input.)"
|
||||
"2. Proceed with UI/UX design without a style guide? (WARNING: This may lead to visual inconsistencies and is strongly discouraged for new features or significant UI changes.)"
|
||||
"Please choose 1 or 2."
|
||||
```
|
||||
(If the user previously chose to link one but it failed, this prompt should adapt).
|
||||
|
||||
**D. Assisting in Style Guide Creation (If user opts-in for option 1):**
|
||||
This initiates a sub-process to define and document a basic style guide, which will be saved as `memory-bank/style-guide.md`.
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
StartCreate["User Opts to Create Style Guide"] --> GatherInspiration["Gather Inspiration<br>(e.g., Analyze user-provided image, existing UI, or direct user input)"]
|
||||
GatherInspiration --> DefineColors["Define Core Color Palette<br>(Primary, Secondary, Accent, Neutrals, Status Colors - with hex codes)"]
|
||||
DefineColors --> DefineTypography["Define Typography<br>(Font Families, Sizes, Weights for Headings, Body, Links)"]
|
||||
DefineTypography --> DefineSpacing["Define Spacing System<br>(Base unit, margins, paddings, Tailwind scale usage)"]
|
||||
DefineSpacing --> DefineComponents["Define Key Component Styles (Conceptual)<br>(Buttons, Inputs, Cards - using Tailwind utility classes if applicable)"]
|
||||
DefineComponents --> DefineTone["Define Tone of Voice & Imagery Style (Optional)"]
|
||||
DefineTone --> GenerateDoc["Generate content for 'memory-bank/style-guide.md'<br>(Populate with defined elements)"]
|
||||
GenerateDoc --> SaveFile["Save the generated content to 'memory-bank/style-guide.md'"]
|
||||
SaveFile --> Confirm["Confirm 'memory-bank/style-guide.md' creation & Proceed with UI/UX Design"]
|
||||
|
||||
style StartCreate fill:#c3e88d,stroke:#82a75c,color:black
|
||||
style GatherInspiration fill:#e0f2f1,stroke:#a7c4c0,color:black
|
||||
style SaveFile fill:#89cff0,stroke:#50a6c2,color:black
|
||||
```
|
||||
* **Process**:
|
||||
1. **Inspiration**: Analyze user-provided examples (like the dashboard image `original-a5959a2926d1e7ede16dbe1d27593a59.webp`) or ask for user preferences.
|
||||
* `AI: "To create a style guide, do you have an existing design, screenshot, or website I can analyze for styles? Or would you like to define them from scratch?"`
|
||||
2. **Define Elements**: Guide the user through defining colors, typography, spacing, and key component styles (as detailed in the previous response regarding the sample based on the image).
|
||||
3. **Documentation**: Generate the content for `memory-bank/style-guide.md`. The structure should be similar to the sample style guide created from the dashboard image.
|
||||
4. **Save File**: The system should then create and save this content to the file `memory-bank/style-guide.md`.
|
||||
* Once `memory-bank/style-guide.md` is created/loaded, it becomes the **single source of truth for visual design**.
|
||||
|
||||
## 🖼️ Key UI/UX Design Considerations (To be applied using `memory-bank/style-guide.md`)
|
||||
|
||||
### 1. User Needs Analysis
|
||||
* **Personas**: Define target user personas.
|
||||
* **User Stories/Jobs-to-be-Done**: Clarify what users need to achieve.
|
||||
* **Use Cases**: Detail specific interaction scenarios.
|
||||
|
||||
### 2. Information Architecture (IA)
|
||||
* **Content Inventory & Audit**: Understand existing content.
|
||||
* **Hierarchy & Structure**: Organize content logically.
|
||||
* **Navigation Design**: Design intuitive navigation (menus, breadcrumbs) adhering to `memory-bank/style-guide.md` for appearance.
|
||||
* **Labeling**: Use clear and consistent labels.
|
||||
|
||||
### 3. Interaction Design (IxD)
|
||||
* **User Flows**: Map out the user's path.
|
||||
* **Wireframes**: Create low-fidelity layouts.
|
||||
* **Prototypes (Conceptual)**: Describe interactive elements and transitions.
|
||||
* **Error Handling & Prevention**: Design clear error messages (styled per `memory-bank/style-guide.md`).
|
||||
* **Feedback Mechanisms**: Implement visual/textual feedback (styled per `memory-bank/style-guide.md`).
|
||||
|
||||
### 4. Visual Design (Strictly follow `memory-bank/style-guide.md`)
|
||||
* **Style Guide Adherence**: **CRITICAL** - All visual choices **MUST** conform to `memory-bank/style-guide.md`.
|
||||
* **Visual Hierarchy**: Use the Style Guide's typography and spacing to guide the user.
|
||||
* **Layout & Composition**: Arrange elements effectively using Tailwind CSS and Style Guide spacing.
|
||||
* **Typography**: Apply defined font families, sizes, and weights from the Style Guide.
|
||||
* **Color Palette**: Exclusively use colors defined in the Style Guide.
|
||||
* **Imagery & Iconography**: Use icons and images that match the Style Guide's defined style.
|
||||
* **Branding**: Align with project branding guidelines as documented in the Style Guide.
|
||||
|
||||
### 5. Accessibility (A11y)
|
||||
* **WCAG Compliance Level**: Target AA or AAA.
|
||||
* **Semantic HTML**.
|
||||
* **Keyboard Navigation**.
|
||||
* **ARIA Attributes**.
|
||||
* **Color Contrast**: Verify against Style Guide colors.
|
||||
* **Alternative Text**.
|
||||
|
||||
### 6. Platform & Responsiveness
|
||||
* **Responsive Design**: Ensure UI adapts to screen sizes using Style Guide's responsive principles (if defined).
|
||||
* **Platform Conventions**: Adhere to UI patterns for the target platform(s).
|
||||
|
||||
## 🛠️ UI/UX Option Evaluation & Decision Making
|
||||
|
||||
Reference the project's `optimized-creative-template.mdc`. Key evaluation criteria **must** include:
|
||||
|
||||
* Usability
|
||||
* Learnability
|
||||
* Efficiency
|
||||
* Accessibility
|
||||
* Aesthetics (as defined by `memory-bank/style-guide.md`)
|
||||
* Feasibility (React/Tailwind)
|
||||
* Alignment with Requirements
|
||||
* **Adherence to `memory-bank/style-guide.md` (CRITICAL if guide exists)**
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
subgraph "UI/UX EVALUATION CRITERIA"
|
||||
C1["Usability"]
|
||||
C2["Learnability"]
|
||||
C3["Efficiency"]
|
||||
C4["Accessibility (A11y)"]
|
||||
C5["Aesthetics (Per Style Guide)"]
|
||||
C6["Feasibility (React/Tailwind)"]
|
||||
C7["Alignment with Requirements"]
|
||||
C8["<b>Style Guide Adherence</b>"]
|
||||
end
|
||||
|
||||
style C8 fill:#ff5555,stroke:#c30052,color:white
|
||||
```
|
||||
|
||||
## 📝 Documentation Standards
|
||||
|
||||
* Use the project's `optimized-creative-template.mdc` for documenting UI/UX decisions.
|
||||
* Clearly describe chosen UI patterns and rationale, referencing `memory-bank/style-guide.md`.
|
||||
* Document considerations for responsive states and accessibility, as guided by `memory-bank/style-guide.md`.
|
||||
|
||||
## ✅ UI/UX Design Verification Checklist
|
||||
|
||||
* [ ] **Style Guide (`memory-bank/style-guide.md`) referenced or created?**
|
||||
* [ ] User needs clearly understood and addressed?
|
||||
* [ ] Information architecture logical and intuitive?
|
||||
* [ ] Interaction design clear and efficient?
|
||||
* [ ] **Visual design strictly adheres to `memory-bank/style-guide.md`?**
|
||||
* [ ] Accessibility standards met?
|
||||
* [ ] Responsive design addressed?
|
||||
* [ ] Design decisions documented with rationale and Style Guide references?
|
||||
* [ ] Alignment with React/Tailwind best practices and Style Guide considered?
|
||||
|
||||
## 🔄 Integration with Other Creative Phases
|
||||
|
||||
* **Architecture Design**: Ensure UI/UX is compatible with system architecture.
|
||||
* **Data Model Design**: UI should effectively present/capture data from the data model.
|
||||
* **Style Guide**: All UI/UX work **must** be a direct application or extension of the established `memory-bank/style-guide.md`.
|
||||
|
||||
```
|
||||
@@ -0,0 +1,219 @@
|
||||
---
|
||||
description: Optimized creative phase template with progressive documentation
|
||||
globs: "**/creative*/**", "**/design*/**", "**/decision*/**"
|
||||
alwaysApply: false
|
||||
---
|
||||
|
||||
# OPTIMIZED CREATIVE PHASE TEMPLATE
|
||||
|
||||
> **TL;DR:** This template implements a progressive documentation approach for creative phases, optimizing token usage while maintaining thorough design exploration.
|
||||
|
||||
## 📝 PROGRESSIVE DOCUMENTATION MODEL
|
||||
|
||||
```mermaid
|
||||
graph TD
|
||||
Start["Creative Phase Start"] --> P1["1️⃣ PROBLEM<br>Define scope"]
|
||||
P1 --> P2["2️⃣ OPTIONS<br>Explore alternatives"]
|
||||
P2 --> P3["3️⃣ ANALYSIS<br>Evaluate selected options"]
|
||||
P3 --> P4["4️⃣ DECISION<br>Finalize approach"]
|
||||
P4 --> P5["5️⃣ IMPLEMENTATION<br>Document guidelines"]
|
||||
|
||||
style Start fill:#d971ff,stroke:#a33bc2,color:white
|
||||
style P1 fill:#4da6ff,stroke:#0066cc,color:white
|
||||
style P2 fill:#ffa64d,stroke:#cc7a30,color:white
|
||||
style P3 fill:#4dbb5f,stroke:#36873f,color:white
|
||||
style P4 fill:#d94dbb,stroke:#a3378a,color:white
|
||||
style P5 fill:#4dbbbb,stroke:#368787,color:white
|
||||
```
|
||||
|
||||
## 📋 TEMPLATE STRUCTURE
|
||||
|
||||
```markdown
|
||||
📌 CREATIVE PHASE START: [Component Name]
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
1️⃣ PROBLEM
|
||||
Description: [Brief problem description]
|
||||
Requirements: [Key requirements as bullet points]
|
||||
Constraints: [Technical or business constraints]
|
||||
|
||||
2️⃣ OPTIONS
|
||||
Option A: [Name] - [One-line description]
|
||||
Option B: [Name] - [One-line description]
|
||||
Option C: [Name] - [One-line description]
|
||||
|
||||
3️⃣ ANALYSIS
|
||||
| Criterion | Option A | Option B | Option C |
|
||||
|-----------|----------|----------|----------|
|
||||
| Performance | ⭐⭐⭐ | ⭐⭐ | ⭐⭐⭐⭐ |
|
||||
| Complexity | ⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ |
|
||||
| Maintainability | ⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐ |
|
||||
|
||||
Key Insights:
|
||||
- [Insight 1]
|
||||
- [Insight 2]
|
||||
|
||||
4️⃣ DECISION
|
||||
Selected: [Option X]
|
||||
Rationale: [Brief justification]
|
||||
|
||||
5️⃣ IMPLEMENTATION NOTES
|
||||
- [Implementation note 1]
|
||||
- [Implementation note 2]
|
||||
- [Implementation note 3]
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
📌 CREATIVE PHASE END
|
||||
```
|
||||
|
||||
## 🧩 DETAILED OPTION ANALYSIS (ON DEMAND)
|
||||
|
||||
Detailed analysis can be provided on demand for selected options:
|
||||
|
||||
```markdown
|
||||
<details>
|
||||
<summary>Detailed Analysis: Option A</summary>
|
||||
|
||||
### Option A: [Full Name]
|
||||
|
||||
**Complete Description**:
|
||||
[Detailed description of how the option works]
|
||||
|
||||
**Pros**:
|
||||
- [Pro 1 with explanation]
|
||||
- [Pro 2 with explanation]
|
||||
- [Pro 3 with explanation]
|
||||
|
||||
**Cons**:
|
||||
- [Con 1 with explanation]
|
||||
- [Con 2 with explanation]
|
||||
|
||||
**Implementation Complexity**: [Low/Medium/High]
|
||||
[Explanation of complexity factors]
|
||||
|
||||
**Resource Requirements**:
|
||||
[Details on resource needs]
|
||||
|
||||
**Risk Assessment**:
|
||||
[Analysis of risks]
|
||||
</details>
|
||||
```
|
||||
|
||||
## 📊 COMPLEXITY-BASED SCALING
|
||||
|
||||
The template automatically scales documentation requirements based on task complexity level:
|
||||
|
||||
### Level 1-2 (Quick Fix/Enhancement)
|
||||
- Simplified problem/solution
|
||||
- Focus on implementation
|
||||
- Minimal option exploration
|
||||
|
||||
### Level 3 (Feature Development)
|
||||
- Multiple options required
|
||||
- Analysis table with key criteria
|
||||
- Implementation guidelines
|
||||
|
||||
### Level 4 (Enterprise Development)
|
||||
- Comprehensive analysis
|
||||
- Multiple viewpoints considered
|
||||
- Detailed implementation plan
|
||||
- Expanded verification criteria
|
||||
|
||||
## ✅ VERIFICATION PROTOCOL
|
||||
|
||||
Quality verification is condensed into a simple checklist:
|
||||
|
||||
```markdown
|
||||
VERIFICATION:
|
||||
[x] Problem clearly defined
|
||||
[x] Multiple options considered
|
||||
[x] Decision made with rationale
|
||||
[x] Implementation guidance provided
|
||||
```
|
||||
|
||||
## 🔄 USAGE EXAMPLES
|
||||
|
||||
### Architecture Decision (Level 3)
|
||||
|
||||
```markdown
|
||||
📌 CREATIVE PHASE START: Authentication System
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
1️⃣ PROBLEM
|
||||
Description: Design an authentication system for the application
|
||||
Requirements: Secure, scalable, supports SSO, easy to maintain
|
||||
Constraints: Must work with existing user database, <100ms response time
|
||||
|
||||
2️⃣ OPTIONS
|
||||
Option A: JWT-based stateless auth - Simple token-based approach
|
||||
Option B: Session-based auth with Redis - Server-side session storage
|
||||
Option C: OAuth2 implementation - Delegated authorization framework
|
||||
|
||||
3️⃣ ANALYSIS
|
||||
| Criterion | JWT | Sessions | OAuth2 |
|
||||
|-----------|-----|----------|--------|
|
||||
| Security | ⭐⭐⭐ | ⭐⭐⭐⭐ | ⭐⭐⭐⭐⭐ |
|
||||
| Scalability | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ |
|
||||
| Complexity | ⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐⭐ |
|
||||
| Performance | ⭐⭐⭐⭐⭐ | ⭐⭐⭐ | ⭐⭐⭐ |
|
||||
|
||||
Key Insights:
|
||||
- JWT offers best performance but limited revocation options
|
||||
- Sessions provide better security control but require more infrastructure
|
||||
- OAuth2 most complex but offers best integration possibilities
|
||||
|
||||
4️⃣ DECISION
|
||||
Selected: Option A: JWT-based auth with refresh tokens
|
||||
Rationale: Best balance of performance and scalability while meeting security needs
|
||||
|
||||
5️⃣ IMPLEMENTATION NOTES
|
||||
- Use HS256 algorithm for token signing
|
||||
- Implement short-lived access tokens (15min) with longer refresh tokens (7 days)
|
||||
- Store token blacklist in Redis for revocation capability
|
||||
- Add rate limiting on token endpoints
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
📌 CREATIVE PHASE END
|
||||
```
|
||||
|
||||
### Algorithm Decision (Level 2)
|
||||
|
||||
```markdown
|
||||
📌 CREATIVE PHASE START: Search Algorithm
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
|
||||
1️⃣ PROBLEM
|
||||
Description: Implement efficient text search for product catalog
|
||||
Requirements: Fast results, support for partial matches, case insensitive
|
||||
Constraints: Dataset < 10,000 items, must work in browser environment
|
||||
|
||||
2️⃣ OPTIONS
|
||||
Option A: Simple regex search - Basic pattern matching
|
||||
Option B: Trie-based search - Prefix tree structure
|
||||
Option C: Fuzzy search with Levenshtein - Edit distance algorithm
|
||||
|
||||
3️⃣ DECISION
|
||||
Selected: Option B: Trie-based search
|
||||
Rationale: Best performance for prefix searches with manageable memory usage
|
||||
|
||||
4️⃣ IMPLEMENTATION NOTES
|
||||
- Use existing trie library
|
||||
- Preprocess text to lowercase during indexing
|
||||
- Implement letter-by-letter search for instant results
|
||||
- Add debounce (300ms) to prevent excessive rebuilding
|
||||
|
||||
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
||||
📌 CREATIVE PHASE END
|
||||
```
|
||||
|
||||
## 🏆 TOKEN EFFICIENCY BENEFITS
|
||||
|
||||
This template significantly reduces token usage by:
|
||||
|
||||
1. Focusing on essential information without unnecessary verbosity
|
||||
2. Using compact tabular formats for comparisons
|
||||
3. Implementing progressive disclosure for detailed information
|
||||
4. Scaling documentation requirements by task complexity
|
||||
5. Using visual indicators (emojis) for quick scanning
|
||||
|
||||
The template maintains the rigor of the creative process while improving token efficiency by approximately 60% over the previous format.
|
||||
Reference in New Issue
Block a user