feat(feedback): Add content improvement feedback system
Frontend (frontend/app.js): - Add textarea for improvement feedback - Add submit button with loading state - Handle API response and display improved content Backend (backend/copywriter.py): - Add improve_copy() method using Cohere API - Integrate retry mechanism for API calls Backend (backend/main.py): - Add /improve-content POST endpoint - Implement error handling and return improved content with metadata Testing: - Verified feedback submission flow - Confirmed improved content generation - Tested error scenarios and loading states
This commit is contained in:
+15
-73
@@ -1,3 +1,4 @@
|
||||
|
||||
<!DOCTYPE html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
@@ -198,9 +199,18 @@
|
||||
<select id="history-filter-type">
|
||||
<option value="">All Content Types</option>
|
||||
<option value="email_campaign">Email Campaign</option>
|
||||
<option value="email">Email</option>
|
||||
<option value="social_media">Social Media</option>
|
||||
<option value="blog_post">Blog Post</option>
|
||||
<option value="website_copy">Website Copy</option>
|
||||
<option value="sales_copy">Sales Copy</option>
|
||||
<option value="ad_copy">Ad Copy</option>
|
||||
<option value="video_script">Video Script</option>
|
||||
<option value="case_study">Case Study</option>
|
||||
<option value="product_description">Product Description</option>
|
||||
<option value="landing_page">Landing Page</option>
|
||||
<option value="press_release">Press Release</option>
|
||||
<option value="newsletter">Newsletter</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
@@ -209,45 +219,7 @@
|
||||
</div>
|
||||
|
||||
<div class="history-list">
|
||||
<div class="history-item">
|
||||
<div class="history-item-type email_campaign">Email</div>
|
||||
<div class="history-item-content">
|
||||
<h4>Transformation Masterclass Invitation</h4>
|
||||
<p>Subject: Transform Your Potential with Adriana James' Exclusive Workshop...</p>
|
||||
</div>
|
||||
<div class="history-item-date">Apr 17, 2025</div>
|
||||
<div class="history-item-actions">
|
||||
<button class="btn btn-icon" title="View content"><i class="fas fa-eye"></i></button>
|
||||
<button class="btn btn-icon" title="Edit content"><i class="fas fa-edit"></i></button>
|
||||
<button class="btn btn-icon" title="Delete content"><i class="fas fa-trash"></i></button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="history-item">
|
||||
<div class="history-item-type social_media">Social</div>
|
||||
<div class="history-item-content">
|
||||
<h4>3-Step Framework Post</h4>
|
||||
<p>BREAKTHROUGH MOMENT ✨ Ever feel stuck in patterns that hold you back...</p>
|
||||
</div>
|
||||
<div class="history-item-date">Apr 16, 2025</div>
|
||||
<div class="history-item-actions">
|
||||
<button class="btn btn-icon" title="View content"><i class="fas fa-eye"></i></button>
|
||||
<button class="btn btn-icon" title="Edit content"><i class="fas fa-edit"></i></button>
|
||||
<button class="btn btn-icon" title="Delete content"><i class="fas fa-trash"></i></button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="history-item">
|
||||
<div class="history-item-type blog_post">Blog</div>
|
||||
<div class="history-item-content">
|
||||
<h4>5 Ways to Overcome Limiting Beliefs</h4>
|
||||
<p>Are limiting beliefs holding you back from achieving your full potential?...</p>
|
||||
</div>
|
||||
<div class="history-item-date">Apr 14, 2025</div>
|
||||
<div class="history-item-actions">
|
||||
<button class="btn btn-icon" title="View content"><i class="fas fa-eye"></i></button>
|
||||
<button class="btn btn-icon" title="Edit content"><i class="fas fa-edit"></i></button>
|
||||
<button class="btn btn-icon" title="Delete content"><i class="fas fa-trash"></i></button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- History items will be loaded dynamically -->
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@@ -391,7 +363,7 @@
|
||||
<label for="training-content-type">Content Type</label>
|
||||
<select id="training-content-type">
|
||||
<option value="">Select Type</option>
|
||||
<option value="email_campaign">Email Campaign</option>
|
||||
<option value="email">Email Campaign</option>
|
||||
<option value="social_media">Social Media</option>
|
||||
<option value="blog_post">Blog Post</option>
|
||||
<option value="website_copy">Website Copy</option>
|
||||
@@ -434,10 +406,11 @@
|
||||
<div class="form-group">
|
||||
<select id="training-filter-type">
|
||||
<option value="">All Content Types</option>
|
||||
<option value="email_campaign">Email Campaign</option>
|
||||
<option value="email">Email Campaign</option>
|
||||
<option value="social_media">Social Media</option>
|
||||
<option value="blog_post">Blog Post</option>
|
||||
<option value="website_copy">Website Copy</option>
|
||||
<option value="ad_copy">Ad Copy</option>
|
||||
</select>
|
||||
</div>
|
||||
<div class="form-group">
|
||||
@@ -446,38 +419,7 @@
|
||||
</div>
|
||||
|
||||
<div class="training-list">
|
||||
<div class="training-item">
|
||||
<div class="training-item-type email_campaign">Email</div>
|
||||
<div class="training-item-content">
|
||||
<h4>Transformation Masterclass Promotion</h4>
|
||||
<p>Added on: Apr 15, 2025</p>
|
||||
<div class="metrics">
|
||||
<span class="metric">Open Rate: 42%</span>
|
||||
<span class="metric">Click Rate: 18%</span>
|
||||
<span class="metric">Conversion: 8%</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="training-item-actions">
|
||||
<button class="btn btn-icon" title="View content"><i class="fas fa-eye"></i></button>
|
||||
<button class="btn btn-icon" title="Delete content"><i class="fas fa-trash"></i></button>
|
||||
</div>
|
||||
</div>
|
||||
<div class="training-item">
|
||||
<div class="training-item-type social_media">Social</div>
|
||||
<div class="training-item-content">
|
||||
<h4>Breakthrough Framework</h4>
|
||||
<p>Added on: Apr 10, 2025</p>
|
||||
<div class="metrics">
|
||||
<span class="metric">Engagement: 6.4%</span>
|
||||
<span class="metric">Saves: 178</span>
|
||||
<span class="metric">Shares: 92</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="training-item-actions">
|
||||
<button class="btn btn-icon" title="View content"><i class="fas fa-eye"></i></button>
|
||||
<button class="btn btn-icon" title="Delete content"><i class="fas fa-trash"></i></button>
|
||||
</div>
|
||||
</div>
|
||||
<!-- Training items will be loaded dynamically -->
|
||||
</div>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
Reference in New Issue
Block a user