How swanayamediaproductionwebsitea-hash/swanaya-pulse- works
Purpose and entry points
This is a TypeScript React application centered on AI-assisted marketing/content workflows, research access, SEO auditing, and user-facing product/landing experiences. The browser entry point is src/main.tsx, which mounts the application root in src/App.tsx into index.html. A separate TypeScript server entry exists at server.ts, indicating an optional or companion server-side runtime.
Application shell and experience routing
src/App.tsx is the likely composition boundary for the product shell, page selection, shared overlays, and feature visibility. The UI has multiple first-class experience surfaces rather than a single narrow workflow:
• Main/home and interactive acquisition experiences: src/components/Home.tsx, src/components/InteractiveLanding.tsx, src/components/AdLandingPage.tsx
• Product showcase and FAQ content: src/components/SwanayaShowcase.tsx, src/components/FaqExperiences.tsx
• Shared modal/popup layer: src/components/PopupHub.tsx, src/components/LegalModal.tsx, src/components/AboutModal.tsx
AI content and planning workflow
The core product workflow appears to move from planning/research into generated content and actionable tasks:
• src/components/ContentPlanner.tsx provides planning input or calendar/strategy generation.
• src/components/ContentWriter.tsx is the content-generation/editing stage.
• src/components/AiTodo.tsx represents task extraction, tracking, or AI-guided follow-up.
• src/components/AssistantWidget.tsx is a persistent assistant interaction boundary.
These components should remain separated by durable domain data (briefs, plans, drafts, tasks) rather than sharing tightly coupled display state.
Research, SEO, and live information
Research access and SEO analysis are distinct product modules:
• src/components/ResearchAccessPage.tsx and src/components/ResearchNoticeBanner.tsx control research-oriented access and disclosure states.
• src/components/SeoAuditDashboard.tsx presents audit results and likely acts as the boundary for SEO-analysis data.
• src/components/RealTimeTicker.tsx represents time-sensitive or continuously refreshed information.
External AI, research, SEO, or data-provider calls are not identifiable from the supplied tree; these UI modules should not be assumed to call providers directly.
Identity, consent, and account boundaries
Authentication, onboarding consent, and profile management are explicit concerns:
• src/components/LoginModule.tsx
• src/components/FirstLoginConsentModal.tsx
• src/components/ProfileSettings.tsx
Administrative observability is separately surfaced through src/components/AdminActivityLog.tsx. Legal and consent UX is represented by src/components/LegalCenter.tsx and src/components/LegalModal.tsx, suggesting that policy acceptance should be treated as a durable user-state boundary.
Data and infrastructure
The repository contains two persistence/infrastructure signals:
• Firebase client integration and Firestore authorization rules: src/lib/firebase.ts, firestore.rules, firebase-applet-config.json
• Drizzle-managed relational schema and migrations: src/db/schema.ts, src/db/index.ts, drizzle/0000_secret_bucky.sql
This indicates Firebase/Firestore and a Drizzle-backed database may coexist. Database access belongs behind src/db/index.ts and server-side boundaries, while browser Firebase access belongs behind src/lib/firebase.ts; avoid exposing relational credentials or server database operations to client components.
Runtime and visual platform
The frontend uses React/TSX with Vite configuration: src/main.tsx, vite.config.ts, src/index.css. The visual platform includes a dedicated 3D/background layer in src/components/Background3D.tsx, which should remain isolated from business workflows to prevent rendering concerns from affecting application state. Static verification/SEO assets are served from public/, including public/robots.txt and public/sitemap.xml.
Main entry points: App.tsx Application shell · ContentWriter.tsx Content writing · index.html HTML document · main.tsx React bootstrap
Components 20
Browser App
- HTML document
index.html - React bootstrap
src/main.tsx - Application shell · Selects experiences and shared UI.
src/App.tsx - Visual platform · Isolated 3D rendering and global styling.
src/components/Background3D.tsx - Landing experiences · Home, interactive, ad, showcase, and FAQ surfaces.
src/components/Home.tsx - Shared overlays · Popup, legal, and about dialogs.
src/components/PopupHub.tsx - Search verification assets · Robots and sitemap are served as static assets.
public/robots.txt
Product Workflows
- Content planning · Creates briefs and plans.
src/components/ContentPlanner.tsx - Content writing · Generates and edits drafts from plans.
src/components/ContentWriter.tsx - AI task follow-up · Tracks tasks extracted from workflow output.
src/components/AiTodo.tsx - Assistant widget
src/components/AssistantWidget.tsx - Research access · Includes access state and disclosure banner.
src/components/ResearchAccessPage.tsx - SEO audit dashboard
src/components/SeoAuditDashboard.tsx - Live information
src/components/RealTimeTicker.tsx
Identity & Governance
- Authentication
src/components/LoginModule.tsx - Account consent & profile · Manages first-login consent and profile settings.
src/components/FirstLoginConsentModal.tsx - Activity log
src/components/AdminActivityLog.tsx
Data Boundaries
- Firebase client · Browser-facing Firebase and Firestore boundary.
src/lib/firebase.ts - Server runtime · Companion server-side boundary for protected operations.
server.ts - Relational data access · Owns schema-backed relational access and migrations.
src/db/index.ts
Connections 21
- HTML document → React bootstrap: loads
- React bootstrap → Application shell: mounts
- Application shell → Visual platform: renders
- Application shell → Landing experiences: selects surface
- Application shell → Shared overlays: hosts
- Application shell → Content planning: hosts
- Application shell → Content writing: hosts
- Application shell → AI task follow-up: hosts
- Application shell → Assistant widget: hosts
- Application shell → Research access: hosts
- Application shell → SEO audit dashboard: hosts
- Application shell → Live information: hosts
- Application shell → Authentication: hosts
- Application shell → Account consent & profile: hosts
- Application shell → Activity log: hosts
- Content planning → Content writing: plans and briefs
- Content writing → AI task follow-up: draft-derived tasks
- Authentication → Firebase client: uses client identity
- Account consent & profile → Firebase client: persists user state
- Server runtime → Relational data access: uses protected access
- HTML document → Search verification assets: public crawl assets