diff --git a/CHANGELOG.md b/CHANGELOG.md index b5621a5b..f094ba14 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,7 +1,7 @@ # IGNY8 Change Log -**Current Version:** 1.1.5 -**Last Updated:** January 2, 2025 +**Current Version:** 1.1.7 +**Last Updated:** December 27, 2025 --- @@ -9,6 +9,8 @@ | Version | Date | Summary | |---------|------|---------| +| 1.1.7 | Dec 27, 2025 | Section 5 HELP module - Support links, Documentation, FAQ updates | +| 1.1.6 | Dec 27, 2025 | Section 4 ACCOUNT modules - Profile API, Password Change, Billing improvements | | 1.1.5 | Jan 2, 2025 | Section 3 WORKFLOW modules - Planner, Writer, Progress Modal fixes | | 1.1.4 | Dec 27, 2025 | Section 2 SETUP modules - Add Keywords, Content Settings, Sites fixes | | 1.1.3 | Dec 27, 2025 | Merged RULES.md into .rules | @@ -24,6 +26,100 @@ --- +## v1.1.7 - December 27, 2025 + +### Section 5 HELP Module Implementation + +**Support Links Fixed (CRITICAL):** +- Fixed UserDropdown links going to `/profile` (404) + - "Edit profile" → `/account/settings` + - "Account settings" → `/account/settings` + - "Support" → `/help` +- Implemented Contact Support button with `mailto:support@igny8.com` +- Implemented Feature Request button with `mailto:feedback@igny8.com` + +**Placeholder Pages Deleted (HIGH):** +- **DELETED** `pages/Help/Docs.tsx` - Empty placeholder +- **DELETED** `pages/Help/SystemTesting.tsx` - Empty placeholder +- **DELETED** `pages/Help/FunctionTesting.tsx` - Empty placeholder +- Removed routes `/help/docs`, `/help/system-testing`, `/help/function-testing` from App.tsx + +**Documentation Added:** +- Added comprehensive Table of Contents with new sections +- Added Dashboard documentation section +- Added Setup Module documentation: + - Add Keywords (step-by-step guide) + - Content Settings (3 tabs explained) + - Sites Management (WordPress integration) +- Added Account & Billing documentation: + - Account Settings (Account, Profile, Team tabs) + - Plans & Billing (plan management, cancellation) + - Usage & Limits (credit tracking, alerts) + +**FAQ Expanded:** +- Added 8 new FAQ items: + - How do credits work? + - What uses credits? + - How do I purchase more credits? + - How do I change my payment method? + - Can I cancel my subscription? + - How do I connect WordPress? + - Why isn't my content syncing to WordPress? + - Can I schedule automation to run at specific times? + - What happens if automation fails? + +### Files Changed +- `frontend/src/App.tsx` - Removed placeholder help page imports/routes +- `frontend/src/components/header/UserDropdown.tsx` - Fixed all broken links +- `frontend/src/pages/Help/Help.tsx` - Added documentation sections, expanded FAQ, working support buttons + +### Files Deleted +- `frontend/src/pages/Help/Docs.tsx` +- `frontend/src/pages/Help/SystemTesting.tsx` +- `frontend/src/pages/Help/FunctionTesting.tsx` + +--- + +## v1.1.6 - December 27, 2025 + +### Section 4 ACCOUNT Modules Implementation + +**Account Settings Page (`/account/settings`):** +- **Profile Tab**: Now loads user data from auth store (name, email, phone, timezone) +- **Password Change**: Added password change modal with validation + - Connects to `/v1/auth/change-password/` backend endpoint + - Validates minimum 8 characters, confirmation match + - Shows success/error feedback via toast +- Added `getUserProfile()`, `updateUserProfile()`, `changePassword()` to billing.api.ts + +**Plans & Billing Page (`/account/plans`):** +- **Cancellation Confirmation Modal**: Cancel button now shows confirmation dialog + - Explains consequences: loss of features, 30-day credit preservation + - Requires explicit "Yes, Cancel Subscription" confirmation + - Prevents accidental cancellations + +**Usage Analytics Page (`/account/usage`):** +- **Fixed Fake API Activity Data**: Removed hardcoded values + - Old: Hardcoded "98.5%" success rate, 1,234/567/342 endpoint calls + - New: Uses real `analytics?.usage_by_type` data + - Shows "Operations by Type" with actual credits/counts from backend + - Empty state when no operations recorded + +**Cleanup:** +- **DELETED** `TeamManagementPage.tsx` - orphaned page (functionality exists in AccountSettingsPage Team tab) +- Legacy routes verified working: `/account/team` → `/account/settings`, `/settings/profile` → `/account/settings` + +### Files Changed +- `frontend/src/services/billing.api.ts` - Added profile/password API functions +- `frontend/src/pages/account/AccountSettingsPage.tsx` - Password change modal, profile loading +- `frontend/src/pages/account/PlansAndBillingPage.tsx` - Cancellation confirmation modal +- `frontend/src/pages/account/UsageAnalyticsPage.tsx` - Real data for API Activity tab + +### Files Deleted +- `frontend/src/pages/account/TeamManagementPage.tsx` + +--- + ## v1.1.5 - January 2, 2025 ### Section 3 WORKFLOW Modules Implementation diff --git a/docs/30-FRONTEND/PAGES.md b/docs/30-FRONTEND/PAGES.md index a472ad2a..081b98fd 100644 --- a/docs/30-FRONTEND/PAGES.md +++ b/docs/30-FRONTEND/PAGES.md @@ -1,7 +1,7 @@ # Frontend Pages & Routes -**Last Verified:** January 2, 2025 -**Version:** 1.1.4 +**Last Verified:** December 27, 2025 +**Version:** 1.1.7 **Framework:** React 19 + TypeScript + React Router 6 + Vite --- @@ -139,9 +139,14 @@ Routes defined in `/frontend/src/App.tsx`: **Tab Structure:** - **Account**: Organization name, billing address, tax ID -- **Profile**: Name, email, phone, timezone, language, notifications, security +- **Profile**: Name, email, phone, timezone, language, notifications, security (password change modal) - **Team**: Team member list, invite, remove +**v1.1.6 Changes:** +- Profile tab loads from auth store user data +- Added Change Password modal with validation +- Uses `/v1/auth/change-password/` endpoint + ### Plans & Billing | Route | File | Description | @@ -153,6 +158,9 @@ Routes defined in `/frontend/src/App.tsx`: - **Upgrade Plan**: Pricing table, plan comparison - **History**: Invoices, payments, payment methods +**v1.1.6 Changes:** +- Added cancellation confirmation modal (prevents accidental cancellations) + ### Usage | Route | File | Description | @@ -162,7 +170,11 @@ Routes defined in `/frontend/src/App.tsx`: **Tab Structure:** - **Your Limits & Usage**: Hard + monthly limits with usage bars - **Credit History**: Transaction log -- **API Activity**: Call statistics (currently placeholder data) +- **API Activity**: Operations by type (using real analytics data) + +**v1.1.6 Changes:** +- Fixed fake API Activity data - now shows real `usage_by_type` data +- Removed hardcoded placeholder values ### AI Models (Admin Only) @@ -176,10 +188,23 @@ Routes defined in `/frontend/src/App.tsx`: | Route | File | Description | |-------|------|-------------| -| `/help` | `Help/HelpCenter.tsx` | Documentation, FAQ, support CTAs | -| `/help/docs` | `Help/Documentation.tsx` | Placeholder | -| `/help/system-testing` | `Help/SystemTesting.tsx` | Placeholder | -| `/help/function-testing` | `Help/FunctionTesting.tsx` | Placeholder | +| `/help` | `Help/Help.tsx` | Documentation, FAQ, support CTAs | + +**v1.1.7 Changes:** +- Fixed support buttons (now mailto: links) +- Added Dashboard, Setup, Account & Billing documentation sections +- Expanded FAQ with credits, billing, WordPress, automation topics +- Deleted placeholder pages: Documentation.tsx, SystemTesting.tsx, FunctionTesting.tsx + +**Documentation Sections:** +- Getting Started (Quick Start, Workflow Overview) +- Dashboard (Metrics, Pipeline, Setup Checklist) +- Setup Module (Add Keywords, Content Settings, Sites) +- Planner Module (Keywords, Clusters, Ideas) +- Writer Module (Tasks, Content, Images) +- Automation Setup +- Account & Billing (Account Settings, Plans, Usage) +- FAQ (~28 questions) --- diff --git a/frontend/src/App.tsx b/frontend/src/App.tsx index 217c0435..cdb3ed7e 100644 --- a/frontend/src/App.tsx +++ b/frontend/src/App.tsx @@ -102,9 +102,6 @@ const DeploymentPanel = lazy(() => import("./pages/Sites/DeploymentPanel")); // Help - Lazy loaded const Help = lazy(() => import("./pages/Help/Help")); -const Docs = lazy(() => import("./pages/Help/Docs")); -const SystemTesting = lazy(() => import("./pages/Help/SystemTesting")); -const FunctionTesting = lazy(() => import("./pages/Help/FunctionTesting")); // Components - Lazy loaded const Components = lazy(() => import("./pages/Components")); @@ -243,9 +240,6 @@ export default function App() { {/* Help */} } /> - } /> - } /> - } /> {/* Components (Showcase Page) */} } /> diff --git a/frontend/src/components/header/UserDropdown.tsx b/frontend/src/components/header/UserDropdown.tsx index b134640a..11795b85 100644 --- a/frontend/src/components/header/UserDropdown.tsx +++ b/frontend/src/components/header/UserDropdown.tsx @@ -90,7 +90,7 @@ export default function UserDropdown() { - - - -
-

- Documentation - Coming Soon -

-

- Comprehensive documentation and guides -

-
- - - ); -} - diff --git a/frontend/src/pages/Help/FunctionTesting.tsx b/frontend/src/pages/Help/FunctionTesting.tsx deleted file mode 100644 index c4818268..00000000 --- a/frontend/src/pages/Help/FunctionTesting.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import PageMeta from "../../components/common/PageMeta"; -import ComponentCard from "../../components/common/ComponentCard"; - -export default function FunctionTesting() { - return ( - <> - - - -
-

- Function Testing - Coming Soon -

-

- Test individual functions and components -

-
-
- - ); -} - diff --git a/frontend/src/pages/Help/Help.tsx b/frontend/src/pages/Help/Help.tsx index 1d66a2a1..4730ed99 100644 --- a/frontend/src/pages/Help/Help.tsx +++ b/frontend/src/pages/Help/Help.tsx @@ -26,6 +26,11 @@ export default function Help() { { id: "getting-started", title: "Getting Started", level: 1 }, { id: "quick-start", title: "Quick Start Guide", level: 2 }, { id: "workflow-overview", title: "Workflow Overview", level: 2 }, + { id: "dashboard", title: "Dashboard", level: 1 }, + { id: "setup", title: "Setup Module", level: 1 }, + { id: "add-keywords", title: "Add Keywords", level: 2 }, + { id: "content-settings", title: "Content Settings", level: 2 }, + { id: "sites", title: "Sites Management", level: 2 }, { id: "planner-module", title: "Planner Module", level: 1 }, { id: "keywords", title: "Keywords Management", level: 2 }, { id: "clusters", title: "Keyword Clusters", level: 2 }, @@ -34,7 +39,12 @@ export default function Help() { { id: "tasks", title: "Tasks Management", level: 2 }, { id: "content", title: "Content Generation", level: 2 }, { id: "images", title: "Image Generation", level: 2 }, + { id: "review-publish", title: "Review & Publish", level: 2 }, { id: "automation", title: "Automation Setup", level: 1 }, + { id: "account", title: "Account & Billing", level: 1 }, + { id: "account-settings", title: "Account Settings", level: 2 }, + { id: "plans-billing", title: "Plans & Billing", level: 2 }, + { id: "usage", title: "Usage & Limits", level: 2 }, { id: "faq", title: "Frequently Asked Questions", level: 1 }, ]; @@ -133,6 +143,45 @@ export default function Help() { { question: "How do I view content details?", answer: "Click on any content item in the Content table to open the detailed view. Here you can see the full content, edit it, view associated images, see metadata, and manage publication status." + }, + // Credits & Billing FAQs + { + question: "How do credits work?", + answer: "Credits are used for AI operations like content generation, image creation, and idea generation. Each operation has a credit cost. Your plan includes a monthly credit allocation that resets each billing period. You can purchase additional credits anytime." + }, + { + question: "What uses credits?", + answer: "Content generation, image generation, keyword clustering, and idea generation all use credits. The exact cost varies by operation type. Check your Usage page to see credit costs and your current balance." + }, + { + question: "How do I purchase more credits?", + answer: "Go to Account → Purchase Credits. Select a credit package and complete the purchase. Credits are added to your balance immediately and never expire." + }, + { + question: "How do I change my payment method?", + answer: "Go to Account → Plans & Billing → History tab. You can add new payment methods, remove old ones, and set a default payment method for renewals." + }, + { + question: "Can I cancel my subscription?", + answer: "Yes. Go to Account → Plans & Billing, and click 'Cancel Plan' on the Current Plan tab. You'll be asked to confirm. Your subscription remains active until the end of the billing period, and remaining credits are preserved for 30 days." + }, + // WordPress FAQs + { + question: "How do I connect WordPress?", + answer: "Go to Sites, select your site, and configure WordPress integration in Site Settings. You'll need your WordPress URL and either REST API credentials or an application password. Test the connection before saving." + }, + { + question: "Why isn't my content syncing to WordPress?", + answer: "Check: 1) WordPress credentials are correct, 2) REST API is enabled on your WordPress site, 3) Auto-sync is enabled in Content Settings, 4) The content status is 'Published'. You can manually sync individual posts from the Published tab." + }, + // Automation FAQs + { + question: "Can I schedule automation to run at specific times?", + answer: "Yes! Go to the Automation page for advanced scheduling. You can set specific days, times, and frequencies for your automation runs. The Dashboard shows quick toggle controls for each automation stage." + }, + { + question: "What happens if automation fails?", + answer: "Failed items are logged in the automation activity feed. You can retry failed items individually or in bulk. Check the error message for details and ensure you have sufficient credits." } ]; @@ -314,6 +363,160 @@ export default function Help() { + {/* Dashboard Section */} +
(sectionRefs.current["dashboard"] = el)} className="mb-12 scroll-mt-24"> +

+ + Dashboard +

+ + +

+ Your command center showing workflow progress, key metrics, and quick actions. +

+ +
+
+

Key Metrics

+
    +
  • Keywords: Total keywords in your workflow
  • +
  • Articles: Content pieces created
  • +
  • Images: Images generated
  • +
  • Completion %: Overall workflow progress
  • +
+
+ +
+

Workflow Pipeline

+

+ Visual pipeline showing your progress: Sites → Keywords → Clusters → Ideas → Content → Published +

+
+ +
+

Setup Checklist

+

+ Track your setup progress. Complete all items to start creating content efficiently. +

+
+
+
+
+ + {/* Setup Module Section */} +
(sectionRefs.current["setup"] = el)} className="mb-12 scroll-mt-24"> +

+ + Setup Module +

+ + + +
+

+ Browse and add keywords from our curated database to your content workflow. +

+ +
+

Step-by-Step Guide:

+
    +
  1. Navigate to SETUP → Add Keywords
  2. +
  3. Browse keywords filtered by your site's industry/sector
  4. +
  5. Use filters to narrow results (search, country, difficulty)
  6. +
  7. Toggle "Not Yet Added Only" to see available keywords
  8. +
  9. Select keywords by clicking checkboxes
  10. +
  11. Click "Add to Workflow" button
  12. +
  13. Click "Next: Plan Your Content →" to proceed to Planner
  14. +
+
+ +
+

+ Tip: Start with 10-20 keywords to test your workflow. Mix high and low difficulty keywords for variety. +

+
+
+
+ + +
+

+ Configure how AI generates and publishes your content. +

+ +
+
+

Content Generation Tab

+
    +
  • Default Tone: Professional, Casual, Friendly, etc.
  • +
  • Default Length: Short, Medium, Long articles
  • +
  • Custom Prompt: Additional instructions for AI
  • +
+
+ +
+

Publishing Tab

+
    +
  • Auto-Publish: Automatically publish approved content
  • +
  • Auto-Sync: Keep WordPress in sync with changes
  • +
+
+ +
+

Image Settings Tab

+
    +
  • Configure default image styles
  • +
  • Set image generation preferences
  • +
+
+
+
+
+ + +
+

+ Manage your WordPress sites and their integration settings. +

+ +
+

Setting Up a Site:

+
    +
  1. Go to Sites in the main menu
  2. +
  3. Click "Add Site" button
  4. +
  5. Enter site name and WordPress URL
  6. +
  7. Select industry and sectors
  8. +
  9. Configure WordPress credentials (REST API)
  10. +
  11. Test connection and save
  12. +
+
+ +
+
+ +
+

Site Dashboard

+

+ View site setup progress, connected content, and quick actions. +

+
+
+ +
+ +
+

WordPress Integration

+

+ Connect your WordPress site to automatically publish content, sync posts, and manage images. +

+
+
+
+
+
+
+
+ {/* Planner Module Section */}
(sectionRefs.current["planner-module"] = el)} className="mb-12 scroll-mt-24">

@@ -545,6 +748,146 @@ export default function Help() {

+ {/* Account & Billing Section */} +
(sectionRefs.current["account"] = el)} className="mb-12 scroll-mt-24"> +

+ + Account & Billing +

+ + + +
+

+ Manage your account, profile, and team from one place. +

+ +
+
+

Account Tab

+
    +
  • Organization name and billing email
  • +
  • Billing address for invoices
  • +
  • Tax ID / VAT number
  • +
+
+ +
+

Profile Tab

+
    +
  • Personal information (name, email, phone)
  • +
  • Timezone and language preferences
  • +
  • Notification settings
  • +
  • Password change (under Security)
  • +
+
+ +
+

Team Tab

+
    +
  • View all team members
  • +
  • Invite new members (Admin or Member roles)
  • +
  • Remove team members
  • +
+
+
+ +
+

Changing Your Password:

+
    +
  1. Go to Account Settings → Profile tab
  2. +
  3. Click "Change Password" in the Security section
  4. +
  5. Enter your current password
  6. +
  7. Enter and confirm your new password (min 8 characters)
  8. +
  9. Click "Change Password" to save
  10. +
+
+
+
+ + +
+

+ Manage your subscription, view invoices, and track payments. +

+ +
+
+

Current Plan Tab

+
    +
  • View your plan name and features
  • +
  • Check credit balance
  • +
  • See renewal date
  • +
  • Cancel subscription (with confirmation)
  • +
+
+ +
+

Upgrade Plan Tab

+
    +
  • Compare available plans
  • +
  • See feature differences
  • +
  • Upgrade with prorated billing
  • +
+
+ +
+

History Tab

+
    +
  • Invoice history with PDF downloads
  • +
  • Payment records
  • +
  • Payment method management
  • +
+
+
+
+
+ + +
+

+ Track your credit usage, limits, and activity. +

+ +
+
+

Your Limits & Usage

+
    +
  • Hard Limits: Maximum allowed (sites, users, keywords)
  • +
  • Monthly Limits: Reset each billing cycle
  • +
  • Visual progress bars show current usage
  • +
+
+ +
+

Credit History

+
    +
  • View all credit transactions
  • +
  • See credits added and used
  • +
  • Filter by date range
  • +
+
+ +
+

Activity

+
    +
  • Track operations by type
  • +
  • Monitor daily averages
  • +
  • See credits used per operation
  • +
+
+
+ +
+

+ Usage Alerts: You'll receive automatic alerts at 80%, 90%, and 100% of your limits. +

+
+
+
+
+
+ {/* FAQ Section */}
(sectionRefs.current["faq"] = el)} className="mb-12 scroll-mt-24">

@@ -571,12 +914,18 @@ export default function Help() { Can't find what you're looking for? Our support team is here to help.

diff --git a/frontend/src/pages/Help/SystemTesting.tsx b/frontend/src/pages/Help/SystemTesting.tsx deleted file mode 100644 index fb0787cb..00000000 --- a/frontend/src/pages/Help/SystemTesting.tsx +++ /dev/null @@ -1,22 +0,0 @@ -import PageMeta from "../../components/common/PageMeta"; -import ComponentCard from "../../components/common/ComponentCard"; - -export default function SystemTesting() { - return ( - <> - - - -
-

- System Testing - Coming Soon -

-

- Test system functionality and diagnose issues -

-
-
- - ); -} - diff --git a/to-do-s/part1/SECTION_5_FINAL_MODS.md b/to-do-s/part1/SECTION_5_FINAL_MODS.md index 9346e51f..1dbb2497 100644 --- a/to-do-s/part1/SECTION_5_FINAL_MODS.md +++ b/to-do-s/part1/SECTION_5_FINAL_MODS.md @@ -608,3 +608,45 @@ Create detailed step-by-step documentation for: 16. ✅ Usage --- + + +## Section 5 HELP Module - All CRITICAL Items Fixed: + +1. **Fixed Support Dropdown Links** (UserDropdown.tsx) + - "Edit profile" → `/account/settings` + - "Account settings" → `/account/settings` + - "Support" → `/help` + +2. **Implemented Contact Support Button** (Help.tsx) + - Now opens `mailto:support@igny8.com?subject=Support Request` + +3. **Implemented Feature Request Button** (Help.tsx) + - Now opens `mailto:feedback@igny8.com?subject=Feature Request` + +### Section 5 HIGH Priority Items: + +4. **Deleted Placeholder Pages** + - Docs.tsx ❌ + - SystemTesting.tsx ❌ + - FunctionTesting.tsx ❌ + +5. **Removed Routes from App.tsx** + - `/help/docs`, `/help/system-testing`, `/help/function-testing` + +6. **Added Comprehensive Documentation** (Help.tsx) + - **Dashboard** section - Metrics, Pipeline, Setup Checklist + - **Setup Module** section - Add Keywords, Content Settings, Sites Management + - **Account & Billing** section - Account Settings, Plans & Billing, Usage & Limits + - **8 new FAQ items** covering credits, billing, WordPress, automation + +### Files Changed: +- CHANGELOG.md - Updated to v1.1.7 +- PAGES.md - Updated to v1.1.7 +- App.tsx - Removed placeholder imports/routes +- UserDropdown.tsx - Fixed all links +- Help.tsx - Full documentation overhaul + +### Files Deleted: +- Docs.tsx +- SystemTesting.tsx +- FunctionTesting.tsx