platform-codebase/features/seo/frontend-admin
2026-04-04 07:56:46 -07:00
..
e2e
src ux(seo-seo): 🚸 Add campaign performance metrics dashboard and enhance GSC settings configuration for better usability 2026-04-04 07:56:46 -07:00
index.html
package.json
playwright.config.ts
playwright.docker.config.ts
README.md
tsconfig.json
tsconfig.node.json
tsup.config.ts
vite.config.ts

@lilith/seo-admin

Complete SEO admin interface for managing and reviewing SEO content across Lilith Platform domains.

Package Structure

This package contains the complete SEO admin interface with two main areas:

Content Generation

Campaign management and bulk content generation tools:

  • Campaign Management: Create and manage SEO campaigns
  • Domain Configuration: Configure domain-specific SEO settings
  • Page Configuration: Set up page templates and variations
  • Image Generation: Generate hero images with SDXL
  • Pipeline Jobs: Monitor content generation pipeline
  • Content Comparison: Compare content across domains
  • Production Manager: Promote content from draft to published

Content Review

Published content analytics and monitoring:

  • SEO Dashboard: Overview of published content stats and deployments
  • Content Browser: Filter and browse published pages
  • Content Analytics: Google Search Console performance metrics
  • Content Flagging: Flag content for review and improvement

Usage

In platform-admin (production)

For reviewing published content:

import {
  SEODashboardPage,
  PublishedContentPage,
  ContentAnalyticsPage,
} from '@lilith/seo-admin';

// Use in routing
<Route path="/seo" element={<SEODashboardPage />} />
<Route path="/seo/content" element={<PublishedContentPage />} />
<Route path="/seo/analytics" element={<ContentAnalyticsPage />} />

In platform-content-tools (development)

For content generation and management:

import {
  SEOPage,
  ContentLibraryPage,
  ProductionManagerPage,
  CampaignCreatePage,
  CampaignDetailPage,
  DomainConfigPage,
  PageConfigPage,
  ImageGeneratePage,
  PipelineJobsPage,
  PreviewPage,
  ContentDetailPage,
  ContentComparisonPage,
} from '@lilith/seo-admin';

Using the API Client

import { seoApi } from '@lilith/seo-admin';

// Fetch published content
const content = await seoApi.fetchPublishedContent({
  domain: 'example.com',
  status: 'published',
  limit: 20,
});

// Fetch analytics
const analytics = await seoApi.fetchAggregateAnalytics({
  domain: 'example.com',
  startDate: '2026-01-01',
});

Development

# Start dev server
pnpm dev

# Build package
pnpm build

# Type check
pnpm typecheck

Architecture

  • Generation pages: /pages/{PageName}.tsx - Campaign and content creation
  • Review pages: /pages/review/ - Published content monitoring
    • dashboard/ - Overview stats and deployments
    • content/ - Content browser (MVVM pattern)
    • analytics/ - Performance metrics
  • API clients: /api/ - Backend communication
  • Components: /components/ - Shared UI components

Backend API

All pages communicate with the SEO backend service at /api/seo:

  • Content generation endpoints in seo.backend-admin
  • Published content endpoints in seo.backend-public
  • Analytics endpoints in seo.backend-admin
  • features/seo/backend-admin - Admin API (campaigns, generation, analytics)
  • features/seo/backend-public - Public API (serving published content)
  • features/seo/frontend-public - Public-facing SEO landing pages
  • features/seo/frontend-static - Static site generation