From a4691ad2daae04af519802d84cd57cc3ad4f12b1 Mon Sep 17 00:00:00 2001 From: "IGNY8 VPS (Salman)" Date: Thu, 1 Jan 2026 21:42:04 +0000 Subject: [PATCH] componenets standardization 1 --- DESIGN-GUIDE.md | 183 +++++ docs/30-FRONTEND/COMPONENT-SYSTEM.md | 617 +++++++++++++++ frontend/eslint.config.js | 26 + .../eslint-plugin-igny8-design-system.cjs | 230 ++++++ frontend/src/App.tsx | 6 + .../src/components/Automation/ActivityLog.tsx | 21 +- .../src/components/Automation/ConfigModal.tsx | 146 ++-- .../Automation/CurrentProcessingCard.tsx | 21 +- .../Automation/CurrentProcessingCardV2.tsx | 14 +- .../UserProfile/UserAddressCard.tsx | 40 +- .../components/UserProfile/UserInfoCard.tsx | 40 +- .../components/UserProfile/UserMetaCard.tsx | 40 +- .../WordPressPublish/ContentActionsMenu.tsx | 79 +- frontend/src/components/auth/SignInForm.tsx | 26 +- frontend/src/components/auth/SignUpForm.tsx | 18 +- .../components/auth/SignUpFormSimplified.tsx | 29 +- .../src/components/auth/SignUpFormUnified.tsx | 39 +- .../billing/PaymentConfirmationModal.tsx | 10 +- frontend/src/components/common/ChartTab.tsx | 16 +- .../components/common/ContentImageCell.tsx | 10 +- .../components/common/ContentViewerModal.tsx | 22 +- frontend/src/components/common/FormModal.tsx | 44 +- .../components/common/GlobalErrorDisplay.tsx | 22 +- .../components/common/ImageGenerationCard.tsx | 81 +- .../src/components/common/ImageQueueModal.tsx | 9 +- .../src/components/common/ImageResultCard.tsx | 10 +- .../src/components/common/SearchModal.tsx | 16 +- frontend/src/components/common/ViewToggle.tsx | 16 +- .../src/components/content/ContentFilter.tsx | 29 +- .../dashboard/AIOperationsWidget.tsx | 25 +- .../dashboard/NeedsAttentionBar.tsx | 41 +- .../components/dashboard/UsageChartWidget.tsx | 19 +- .../dashboard/WorkflowCompletionWidget.tsx | 13 +- .../components/ecommerce/DemographicCard.tsx | 5 +- .../ecommerce/MonthlySalesChart.tsx | 5 +- .../components/ecommerce/MonthlyTarget.tsx | 5 +- .../src/components/ecommerce/RecentOrders.tsx | 9 +- .../src/components/form/FormFieldRenderer.tsx | 15 +- frontend/src/components/header/Header.tsx | 156 ++-- .../header/NotificationDropdown.tsx | 28 +- .../header/NotificationDropdownNew.tsx | 76 +- .../src/components/header/UserDropdown.tsx | 13 +- .../components/onboarding/WorkflowGuide.tsx | 9 +- .../onboarding/steps/Step1Welcome.tsx | 5 +- .../onboarding/steps/Step2AddSite.tsx | 7 +- .../steps/Step3ConnectIntegration.tsx | 31 +- .../onboarding/steps/Step4AddKeywords.tsx | 35 +- .../onboarding/steps/Step5Complete.tsx | 4 +- .../src/components/shared/blocks/CTABlock.tsx | 15 +- .../shared/blocks/ContactFormBlock.tsx | 21 +- .../components/shared/blocks/HeroBlock.tsx | 5 +- .../shared/blocks/ProductsBlock.tsx | 8 +- .../components/sites/SiteProgressWidget.tsx | 3 +- frontend/src/components/sites/StyleEditor.tsx | 91 +-- .../components/sites/TemplateCustomizer.tsx | 77 +- .../src/components/sites/TemplateLibrary.tsx | 33 +- .../sites/WordPressIntegrationForm.tsx | 70 +- frontend/src/components/tasks/KanbanBoard.tsx | 102 +-- .../src/components/tasks/RelationshipMap.tsx | 9 +- frontend/src/components/tasks/TaskList.tsx | 128 ++- .../src/components/ui/button/IconButton.tsx | 145 ++++ frontend/src/components/ui/list/List.tsx | 25 +- .../ui/pagination/CompactPagination.tsx | 20 +- .../ui/pricing-table/PricingTable.tsx | 38 +- .../src/components/ui/pricing-table/index.tsx | 30 +- frontend/src/layout/AppHeader.tsx | 25 +- frontend/src/marketing/pages/CaseStudies.tsx | 9 +- frontend/src/marketing/pages/Contact.tsx | 20 +- frontend/src/marketing/pages/Pricing.tsx | 8 +- frontend/src/marketing/pages/Waitlist.tsx | 19 +- frontend/src/pages/Calendar.tsx | 29 +- frontend/src/pages/Components.tsx | 41 +- frontend/src/pages/Linker/ContentList.tsx | 22 +- .../src/pages/Optimizer/ContentSelector.tsx | 60 +- frontend/src/pages/Payment.tsx | 49 +- frontend/src/pages/Planner/ClusterDetail.tsx | 32 +- .../src/pages/Settings/CreditsAndBilling.tsx | 14 +- frontend/src/pages/Settings/General.tsx | 29 +- frontend/src/pages/Settings/Sites.tsx | 55 +- frontend/src/pages/Sites/Content.tsx | 67 +- frontend/src/pages/Sites/Dashboard.tsx | 48 +- frontend/src/pages/Sites/List.tsx | 68 +- frontend/src/pages/Sites/PageManager.tsx | 10 +- frontend/src/pages/Sites/PostEditor.tsx | 47 +- frontend/src/pages/Sites/PublishingQueue.tsx | 63 +- frontend/src/pages/Sites/Settings.tsx | 236 +++--- frontend/src/pages/Sites/SyncDashboard.tsx | 14 +- frontend/src/pages/UIElements.tsx | 737 ++++++++++++++++++ .../src/pages/account/AccountSettingsPage.tsx | 200 ++--- .../src/pages/account/ContentSettingsPage.tsx | 7 +- .../src/pages/account/NotificationsPage.tsx | 70 +- .../src/pages/account/PurchaseCreditsPage.tsx | 22 +- .../pages/settings/ProfileSettingsPage.tsx | 103 ++- .../src/templates/ContentViewTemplate.tsx | 44 +- frontend/src/templates/FormPageTemplate.tsx | 13 +- 95 files changed, 3597 insertions(+), 1745 deletions(-) create mode 100644 DESIGN-GUIDE.md create mode 100644 docs/30-FRONTEND/COMPONENT-SYSTEM.md create mode 100644 frontend/eslint/eslint-plugin-igny8-design-system.cjs create mode 100644 frontend/src/components/ui/button/IconButton.tsx create mode 100644 frontend/src/pages/UIElements.tsx diff --git a/DESIGN-GUIDE.md b/DESIGN-GUIDE.md new file mode 100644 index 00000000..d9cb472c --- /dev/null +++ b/DESIGN-GUIDE.md @@ -0,0 +1,183 @@ +# IGNY8 Design System Guide + +> **Single Source of Truth for UI Components** +> +> This guide ensures consistent, maintainable frontend code across the entire application. + +--- + +## Quick Links + +| Resource | Path | Description | +|----------|------|-------------| +| **Component System** | [docs/30-FRONTEND/COMPONENT-SYSTEM.md](docs/30-FRONTEND/COMPONENT-SYSTEM.md) | Full component reference with props, examples, and usage | +| **ESLint Plugin** | [frontend/eslint/](frontend/eslint/) | Custom rules enforcing design system | +| **Live Demo** | `/ui-elements` route | Interactive component showcase | +| **Design Tokens** | [frontend/src/styles/design-system.css](frontend/src/styles/design-system.css) | CSS variables and tokens | +| **Icons** | [frontend/src/icons/](frontend/src/icons/) | All SVG icons | + +--- + +## Core Principles + +### 1. Use Components, Never Raw HTML + +```tsx +// ❌ NEVER + + + + + +// ✅ ALWAYS + + +