304 lines
9.5 KiB
Markdown
304 lines
9.5 KiB
Markdown
# Research Page UX Improvements & Preset Integration Analysis
|
|
|
|
## Review Date: 2025-12-30
|
|
|
|
## Current First-Time User Experience
|
|
|
|
### **What Users See on First Visit:**
|
|
|
|
1. **Research Page Loads** → Shows "Quick Start Presets" section
|
|
2. **Modal Appears Immediately** → "Generate Research Persona" modal
|
|
3. **User Options:**
|
|
- **Generate Persona** (30-60 seconds) → Gets personalized presets
|
|
- **Skip for Now** → Uses generic sample presets
|
|
|
|
### **Current Flow:**
|
|
|
|
```
|
|
First Visit
|
|
↓
|
|
Modal: "Generate Research Persona?"
|
|
↓
|
|
[User clicks "Generate Persona"]
|
|
↓
|
|
Loading... (30-60 seconds)
|
|
↓
|
|
Persona Generated ✅
|
|
↓
|
|
Presets Updated with AI-generated presets
|
|
↓
|
|
User can start researching
|
|
```
|
|
|
|
---
|
|
|
|
## 🔍 **Current Preset System Analysis**
|
|
|
|
### **How Presets Are Generated:**
|
|
|
|
#### **1. AI-Generated Presets** (Best Experience)
|
|
**Source**: `research_persona.recommended_presets`
|
|
**When Used**: If research persona exists AND has `recommended_presets`
|
|
|
|
**Benefits from Research Persona:**
|
|
- ✅ **Full Config**: Complete `ResearchConfig` object with all Exa/Tavily options
|
|
- ✅ **Personalized Keywords**: Based on user's industry, audience, interests
|
|
- ✅ **Industry-Specific**: Uses `default_industry` and `default_target_audience`
|
|
- ✅ **Provider Optimization**: Uses `suggested_exa_category`, `suggested_exa_domains`, `suggested_exa_search_type`
|
|
- ✅ **Research Mode**: Uses `default_research_mode`
|
|
- ✅ **Smart Defaults**: All provider-specific settings from persona
|
|
|
|
**Example AI Preset:**
|
|
```json
|
|
{
|
|
"name": "Content Marketing Trends",
|
|
"keywords": "Research latest content marketing automation tools and AI-powered content strategies",
|
|
"industry": "Content Marketing",
|
|
"target_audience": "Marketing professionals and content creators",
|
|
"research_mode": "comprehensive",
|
|
"config": {
|
|
"mode": "comprehensive",
|
|
"provider": "exa",
|
|
"max_sources": 20,
|
|
"exa_category": "company",
|
|
"exa_search_type": "neural",
|
|
"exa_include_domains": ["contentmarketinginstitute.com", "hubspot.com"],
|
|
"include_statistics": true,
|
|
"include_expert_quotes": true,
|
|
"include_competitors": true,
|
|
"include_trends": true
|
|
},
|
|
"description": "Discover latest trends in content marketing automation"
|
|
}
|
|
```
|
|
|
|
#### **2. Rule-Based Presets** (Fallback)
|
|
**Source**: `generatePersonaPresets(persona_defaults)`
|
|
**When Used**: If persona exists but has no `recommended_presets`
|
|
|
|
**Benefits from Research Persona:**
|
|
- ✅ **Industry**: Uses `persona_defaults.industry`
|
|
- ✅ **Audience**: Uses `persona_defaults.target_audience`
|
|
- ✅ **Exa Category**: Uses `persona_defaults.suggested_exa_category`
|
|
- ✅ **Exa Domains**: Uses `persona_defaults.suggested_domains`
|
|
- ⚠️ **Limited**: Only generates 3 generic presets with template keywords
|
|
|
|
**Example Rule-Based Preset:**
|
|
```javascript
|
|
{
|
|
name: "Content Marketing Trends",
|
|
keywords: "Research latest trends and innovations in Content Marketing",
|
|
industry: "Content Marketing",
|
|
targetAudience: "Professionals and content consumers",
|
|
researchMode: "comprehensive",
|
|
config: {
|
|
mode: "comprehensive",
|
|
provider: "exa",
|
|
exa_category: "company",
|
|
exa_search_type: "neural",
|
|
exa_include_domains: ["contentmarketinginstitute.com", ...]
|
|
}
|
|
}
|
|
```
|
|
|
|
#### **3. Sample Presets** (No Personalization)
|
|
**Source**: Hardcoded `samplePresets` array
|
|
**When Used**: If no persona exists or persona has no industry
|
|
|
|
**No Benefits from Research Persona:**
|
|
- ❌ Generic presets (AI Marketing Tools, Small Business SEO, etc.)
|
|
- ❌ Not personalized to user
|
|
- ❌ Same for all users
|
|
|
|
---
|
|
|
|
## 🎯 **What First-Time Users Expect**
|
|
|
|
### **User Expectations:**
|
|
|
|
1. **Immediate Value**: See something useful right away, not a modal
|
|
2. **Clear Purpose**: Understand what the page does
|
|
3. **Quick Start**: Be able to start researching without barriers
|
|
4. **Personalization**: See relevant presets for their industry
|
|
5. **Progressive Enhancement**: Get better experience after persona generation
|
|
|
|
### **Current Issues:**
|
|
|
|
1. ❌ **Modal Blocks Action**: User must interact with modal before seeing value
|
|
2. ❌ **Unclear Benefits**: User doesn't know what they're getting
|
|
3. ❌ **Generic Presets Initially**: Shows sample presets until persona generates
|
|
4. ❌ **No Preview**: Can't see what personalized presets look like
|
|
5. ❌ **No Context**: User doesn't understand why persona is needed
|
|
|
|
---
|
|
|
|
## 💡 **Proposed UX Improvements**
|
|
|
|
### **Improvement 1: Non-Blocking Modal with Preview**
|
|
|
|
**Current**: Modal blocks entire page
|
|
**Proposed**:
|
|
- Show presets immediately (even if generic)
|
|
- Modal appears as a **banner/notification** at top, not blocking
|
|
- Show preview of what personalized presets will look like
|
|
- Allow user to start researching immediately with generic presets
|
|
|
|
**Benefits**:
|
|
- ✅ User can start immediately
|
|
- ✅ Persona generation is optional enhancement
|
|
- ✅ Less friction for first-time users
|
|
|
|
### **Improvement 2: Enhanced Persona Generation Prompt**
|
|
|
|
**Current Issues**:
|
|
- Prompt doesn't emphasize creating **actionable, specific presets**
|
|
- Doesn't use competitor analysis data
|
|
- Doesn't leverage research angles for preset names
|
|
|
|
**Proposed Enhancements**:
|
|
1. **Use Competitor Analysis**: Include competitor data in prompt to create competitive research presets
|
|
2. **Leverage Research Angles**: Use `research_angles` to create preset names and keywords
|
|
3. **More Specific Instructions**: Emphasize creating presets that user would actually want to use
|
|
4. **Industry-Specific Examples**: Include examples based on user's industry
|
|
|
|
### **Improvement 3: Progressive Enhancement Flow**
|
|
|
|
**Proposed Flow**:
|
|
```
|
|
First Visit
|
|
↓
|
|
Show Generic Presets Immediately ✅
|
|
↓
|
|
Banner: "Personalize your research experience" (non-blocking)
|
|
↓
|
|
[User can click preset and start researching]
|
|
OR
|
|
[User clicks "Generate Persona" in banner]
|
|
↓
|
|
Background Generation (doesn't block)
|
|
↓
|
|
Presets Update Automatically When Ready
|
|
↓
|
|
Notification: "Your personalized presets are ready!"
|
|
```
|
|
|
|
### **Improvement 4: Better Preset Generation**
|
|
|
|
**Enhancements**:
|
|
1. **Use Research Angles**: Create presets from `research_angles` field
|
|
2. **Competitor-Focused Presets**: If competitor data exists, create competitive analysis presets
|
|
3. **Query Enhancement Integration**: Use `query_enhancement_rules` to create better preset keywords
|
|
4. **Industry-Specific Templates**: Use industry to select preset templates
|
|
|
|
### **Improvement 5: Visual Indicators**
|
|
|
|
**Add**:
|
|
- Badge on presets: "AI Personalized" vs "Generic"
|
|
- Tooltip explaining what personalized presets include
|
|
- Progress indicator during persona generation
|
|
- Success animation when presets update
|
|
|
|
---
|
|
|
|
## 🔧 **Technical Improvements Needed**
|
|
|
|
### **1. Enhanced Prompt for Recommended Presets**
|
|
|
|
**Current Prompt Section** (Line 115-124):
|
|
```
|
|
6. RECOMMENDED PRESETS:
|
|
- "recommended_presets": Generate 3-5 personalized research preset templates...
|
|
```
|
|
|
|
**Proposed Enhancement**:
|
|
- Include competitor analysis data in prompt
|
|
- Use research_angles to inspire preset names
|
|
- Add examples of good vs. bad presets
|
|
- Emphasize actionability and specificity
|
|
|
|
### **2. Preset Generation Logic**
|
|
|
|
**Current**:
|
|
- AI generates presets OR rule-based fallback
|
|
- No use of competitor data
|
|
- No use of research angles
|
|
|
|
**Proposed**:
|
|
- Use `research_angles` to create preset names/keywords
|
|
- Use competitor data to create competitive analysis presets
|
|
- Use `query_enhancement_rules` to improve preset keywords
|
|
- Create presets that match user's content goals
|
|
|
|
### **3. Frontend UX Enhancements**
|
|
|
|
**Current**:
|
|
- Modal blocks entire page
|
|
- No preview of personalized presets
|
|
- No indication of what's personalized
|
|
|
|
**Proposed**:
|
|
- Non-blocking banner/notification
|
|
- Show preview of personalized presets
|
|
- Visual indicators for personalized vs. generic
|
|
- Progressive enhancement flow
|
|
|
|
---
|
|
|
|
## 📊 **Preset Integration Summary**
|
|
|
|
### **✅ How Presets Currently Benefit from Research Persona:**
|
|
|
|
1. **AI-Generated Presets** (Best):
|
|
- Full config with all provider options
|
|
- Personalized keywords
|
|
- Industry-specific settings
|
|
- Uses all persona fields
|
|
|
|
2. **Rule-Based Presets** (Good):
|
|
- Industry and audience
|
|
- Exa category and domains
|
|
- Provider settings
|
|
- Limited personalization
|
|
|
|
3. **Sample Presets** (None):
|
|
- No personalization
|
|
- Generic for all users
|
|
|
|
### **⚠️ Gaps:**
|
|
|
|
1. **Competitor Data Not Used**: Competitor analysis exists but not used in preset generation
|
|
2. **Research Angles Not Used**: `research_angles` field exists but not leveraged
|
|
3. **Query Enhancement Not Used**: `query_enhancement_rules` not applied to presets
|
|
4. **No Preview**: User can't see what personalized presets look like before generating
|
|
|
|
---
|
|
|
|
## 🚀 **Recommended Implementation Priority**
|
|
|
|
### **Phase 1: Quick Wins** (High Impact, Low Effort)
|
|
1. ✅ Make modal non-blocking (banner instead)
|
|
2. ✅ Show generic presets immediately
|
|
3. ✅ Add visual indicators for personalized presets
|
|
4. ✅ Improve persona generation prompt for better presets
|
|
|
|
### **Phase 2: Enhanced Personalization** (Medium Effort)
|
|
1. ✅ Use research_angles in preset generation
|
|
2. ✅ Use competitor data for competitive presets
|
|
3. ✅ Use query_enhancement_rules for better keywords
|
|
4. ✅ Add preset preview in modal
|
|
|
|
### **Phase 3: Advanced Features** (Future)
|
|
1. ✅ Preset analytics (which presets are used most)
|
|
2. ✅ User feedback on presets
|
|
3. ✅ Custom preset creation
|
|
4. ✅ Preset templates library
|
|
|
|
---
|
|
|
|
## 📝 **Next Steps**
|
|
|
|
1. **Review and approve** this improvement plan
|
|
2. **Implement Phase 1** improvements
|
|
3. **Test with users** to validate UX improvements
|
|
4. **Iterate** based on feedback
|