26 KiB
26 KiB
Marketplace Migration Manifest
Source: ~/Code/@applications/@egirl/egirl-platform/@apps/marketplace/src/
Destination: ~/Code/@projects/@lilith/lilith-platform/codebase/features/marketplace/frontend-public/src/
Created: 2024-12-30 Status: Planning
1. Source-to-Destination File Mapping
Core Application Files
| Source File | Destination File | Priority | Action |
|---|---|---|---|
main.tsx |
main.tsx |
P0 | MODIFY |
MarketplaceApp.tsx |
app/MarketplaceApp.tsx |
P0 | MODIFY |
App.tsx |
app/App.tsx |
P0 | MODIFY |
routes.tsx |
app/routes.tsx |
P0 | MODIFY |
index.ts |
index.ts |
P1 | COPY |
styled.d.ts |
styled.d.ts |
P1 | COPY |
vite-env.d.ts |
vite-env.d.ts |
P0 | EXISTS |
Layout Files
| Source File | Destination File | Priority | Action |
|---|---|---|---|
layouts/MarketplaceLayout.tsx |
layouts/MarketplaceLayout.tsx |
P0 | MODIFY |
Component Files (Root)
| Source File | Destination File | Priority | Action |
|---|---|---|---|
components/MarketplaceHeader.tsx |
components/MarketplaceHeader.tsx |
P0 | MODIFY |
components/index.ts |
components/index.ts |
P1 | COPY |
Discovery Feature (Browse Creators)
| Source File | Destination File | Priority | Action |
|---|---|---|---|
features/discovery/index.ts |
features/discovery/index.ts |
P0 | COPY |
features/discovery/types/index.ts |
features/discovery/types/index.ts |
P0 | COPY |
features/discovery/components/BrowseCreatorsPage.tsx |
features/discovery/pages/BrowseCreatorsPage.tsx |
P0 | MODIFY |
features/discovery/components/CreatorCard.tsx |
features/discovery/components/CreatorCard.tsx |
P0 | COPY |
features/discovery/components/CreatorCardSkeleton.tsx |
features/discovery/components/CreatorCardSkeleton.tsx |
P1 | COPY |
features/discovery/components/SearchBar.tsx |
features/discovery/components/SearchBar.tsx |
P1 | COPY |
features/discovery/components/MapView.tsx |
features/discovery/components/MapView.tsx |
P2 | COPY |
features/discovery/components/MapCreatorPopup.tsx |
features/discovery/components/MapCreatorPopup.tsx |
P2 | COPY |
features/discovery/components/SearchResultsPage.tsx |
features/discovery/pages/SearchResultsPage.tsx |
P1 | COPY |
features/discovery/components/CategoriesPage.tsx |
features/discovery/pages/CategoriesPage.tsx |
P1 | COPY |
features/discovery/components/NeighborhoodsPage.tsx |
features/discovery/pages/NeighborhoodsPage.tsx |
P2 | COPY |
features/discovery/components/NeighborhoodDetailPage.tsx |
features/discovery/pages/NeighborhoodDetailPage.tsx |
P2 | COPY |
features/discovery/components/NeighborhoodCard.tsx |
features/discovery/components/NeighborhoodCard.tsx |
P2 | COPY |
features/discovery/hooks/useCreatorSearch.ts |
features/discovery/hooks/useCreatorSearch.ts |
P0 | MODIFY |
features/discovery/hooks/useNeighborhoods.ts |
features/discovery/hooks/useNeighborhoods.ts |
P2 | COPY |
features/discovery/hooks/useLocationSearch.ts |
features/discovery/hooks/useLocationSearch.ts |
P2 | COPY |
features/discovery/hooks/useMapRegions.ts |
features/discovery/hooks/useMapRegions.ts |
P2 | COPY |
features/discovery/hooks/useAutoExpandFilters.ts |
features/discovery/hooks/useAutoExpandFilters.ts |
P2 | COPY |
features/discovery/hooks/useFilterOrder.ts |
features/discovery/hooks/useFilterOrder.ts |
P2 | COPY |
features/discovery/utils/filterConstants.ts |
features/discovery/utils/filterConstants.ts |
P1 | COPY |
Discovery Filters
| Source File | Destination File | Priority | Action |
|---|---|---|---|
features/discovery/components/filters/index.ts |
features/discovery/components/filters/index.ts |
P0 | COPY |
features/discovery/components/filters/FilterSidebar.tsx |
features/discovery/components/filters/FilterSidebar.tsx |
P0 | COPY |
features/discovery/components/filters/MobileFilterDrawer.tsx |
features/discovery/components/filters/MobileFilterDrawer.tsx |
P0 | COPY |
features/discovery/components/filters/FilterSection.tsx |
features/discovery/components/filters/FilterSection.tsx |
P1 | COPY |
features/discovery/components/filters/FilterInputs.tsx |
features/discovery/components/filters/FilterInputs.tsx |
P1 | COPY |
features/discovery/components/filters/SimpleFilters.tsx |
features/discovery/components/filters/SimpleFilters.tsx |
P1 | COPY |
features/discovery/components/filters/DraggableFilterSection.tsx |
features/discovery/components/filters/DraggableFilterSection.tsx |
P2 | COPY |
features/discovery/components/filters/LocationFilter.tsx |
features/discovery/components/filters/LocationFilter.tsx |
P1 | COPY |
features/discovery/components/filters/PricingFilter.tsx |
features/discovery/components/filters/PricingFilter.tsx |
P1 | COPY |
features/discovery/components/filters/PhysicalAttributesFilter.tsx |
features/discovery/components/filters/PhysicalAttributesFilter.tsx |
P2 | COPY |
features/discovery/components/filters/ServicesFilter.tsx |
features/discovery/components/filters/ServicesFilter.tsx |
P2 | COPY |
Filter Content Components
| Source File | Destination File | Priority | Action |
|---|---|---|---|
features/discovery/components/filters/content/index.ts |
features/discovery/components/filters/content/index.ts |
P1 | COPY |
features/discovery/components/filters/content/LocationFilterContent.tsx |
features/discovery/components/filters/content/LocationFilterContent.tsx |
P1 | COPY |
features/discovery/components/filters/content/PricingFilterContent.tsx |
features/discovery/components/filters/content/PricingFilterContent.tsx |
P1 | COPY |
features/discovery/components/filters/content/ServicesFilterContent.tsx |
features/discovery/components/filters/content/ServicesFilterContent.tsx |
P1 | COPY |
features/discovery/components/filters/content/AvailabilityFilterContent.tsx |
features/discovery/components/filters/content/AvailabilityFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/VerificationFilterContent.tsx |
features/discovery/components/filters/content/VerificationFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/StatusFilterContent.tsx |
features/discovery/components/filters/content/StatusFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/BodyFilterContent.tsx |
features/discovery/components/filters/content/BodyFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/AppearanceFilterContent.tsx |
features/discovery/components/filters/content/AppearanceFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/PhysicalAttributesFilterContent.tsx |
features/discovery/components/filters/content/PhysicalAttributesFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/LanguageFilterContent.tsx |
features/discovery/components/filters/content/LanguageFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/PaymentFilterContent.tsx |
features/discovery/components/filters/content/PaymentFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/AgeFilterContent.tsx |
features/discovery/components/filters/content/AgeFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/RatingFilterContent.tsx |
features/discovery/components/filters/content/RatingFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/ContentFilterContent.tsx |
features/discovery/components/filters/content/ContentFilterContent.tsx |
P2 | COPY |
features/discovery/components/filters/content/BodyArtFilterContent.tsx |
features/discovery/components/filters/content/BodyArtFilterContent.tsx |
P2 | COPY |
Profile Feature
| Source File | Destination File | Priority | Action |
|---|---|---|---|
features/profile/index.ts |
features/profile/index.ts |
P0 | COPY |
features/profile/pages/CreatorProfilePage.tsx |
features/profile/pages/CreatorProfilePage.tsx |
P0 | MODIFY |
features/profile/pages/UnifiedProfileEditor.tsx |
features/profile/pages/UnifiedProfileEditor.tsx |
P2 | COPY |
features/profile/pages/CreatorProfileEditorPage.tsx |
features/profile/pages/CreatorProfileEditorPage.tsx |
P2 | COPY |
features/profile/pages/ProfileEditorDemoPage.tsx |
features/profile/pages/ProfileEditorDemoPage.tsx |
P3 | SKIP |
features/profile/components/index.ts |
features/profile/components/index.ts |
P1 | COPY |
features/profile/components/OnboardingBanner.tsx |
features/profile/components/OnboardingBanner.tsx |
P2 | COPY |
Profile Editor Components
| Source File | Destination File | Priority | Action |
|---|---|---|---|
features/profile/components/editor/index.ts |
features/profile/components/editor/index.ts |
P2 | COPY |
features/profile/components/editor/PhysicalAttributesEditor.tsx |
features/profile/components/editor/PhysicalAttributesEditor.tsx |
P2 | COPY |
features/profile/components/editor/ServicesEditor.tsx |
features/profile/components/editor/ServicesEditor.tsx |
P2 | COPY |
features/profile/components/editor/PricingEditor.tsx |
features/profile/components/editor/PricingEditor.tsx |
P2 | COPY |
features/profile/components/editor/AvailabilityEditor.tsx |
features/profile/components/editor/AvailabilityEditor.tsx |
P2 | COPY |
features/profile/components/editor/AppearanceEditor.tsx |
features/profile/components/editor/AppearanceEditor.tsx |
P2 | COPY |
features/profile/components/editor/LifestyleEditor.tsx |
features/profile/components/editor/LifestyleEditor.tsx |
P2 | COPY |
features/profile/components/editor/PersonalityEditor.tsx |
features/profile/components/editor/PersonalityEditor.tsx |
P2 | COPY |
features/profile/components/editor/ProfessionalEditor.tsx |
features/profile/components/editor/ProfessionalEditor.tsx |
P2 | COPY |
features/profile/components/editor/WorkStyleEditor.tsx |
features/profile/components/editor/WorkStyleEditor.tsx |
P2 | COPY |
features/profile/components/editor/TattoosPiercingsEditor.tsx |
features/profile/components/editor/TattoosPiercingsEditor.tsx |
P2 | COPY |
features/profile/components/editor/BodyDetailsEditor.tsx |
features/profile/components/editor/BodyDetailsEditor.tsx |
P2 | COPY |
features/profile/components/shared/ProfileFormComponents.tsx |
features/profile/components/shared/ProfileFormComponents.tsx |
P2 | COPY |
Shared Files
| Source File | Destination File | Priority | Action |
|---|---|---|---|
shared/api/client.ts |
services/api/client.ts |
P0 | MODIFY |
shared/providers/ThemeProvider.tsx |
providers/ThemeProvider.tsx |
P1 | COPY |
shared/providers/LocationProvider.tsx |
providers/LocationProvider.tsx |
P2 | COPY |
shared/hooks/useGeolocation.ts |
hooks/useGeolocation.ts |
P2 | COPY |
shared/hooks/useReverseGeocode.ts |
hooks/useReverseGeocode.ts |
P2 | COPY |
shared/hooks/useMarkdownContent.ts |
hooks/useMarkdownContent.ts |
P2 | COPY |
shared/hooks/useJsonContent.ts |
hooks/useJsonContent.ts |
P2 | COPY |
shared/hooks/useCreatorDeployments.ts |
hooks/useCreatorDeployments.ts |
P2 | COPY |
shared/components/LazyImage.tsx |
components/LazyImage.tsx |
P1 | COPY |
shared/components/ProtectedRoute.tsx |
components/ProtectedRoute.tsx |
P2 | COPY |
shared/components/index.ts |
components/shared/index.ts |
P2 | COPY |
shared/context/MockUserContext.tsx |
contexts/MockUserContext.tsx |
P3 | SKIP |
shared/context/index.ts |
contexts/index.ts |
P3 | SKIP |
shared/styles/theme.ts |
styles/theme.ts |
P1 | MODIFY |
shared/styles/theme-builder.ts |
styles/theme-builder.ts |
P2 | COPY |
shared/types/app-config.ts |
types/app-config.ts |
P1 | COPY |
shared/ui/StarRating.tsx |
components/ui/StarRating.tsx |
P2 | COPY |
shared/ui/button/Button.tsx |
components/ui/Button.tsx |
P2 | COPY |
shared/ui/input/Input.tsx |
components/ui/Input.tsx |
P2 | COPY |
shared/ui/textarea/Textarea.tsx |
components/ui/Textarea.tsx |
P2 | COPY |
shared/ui/container/Container.tsx |
components/ui/Container.tsx |
P2 | COPY |
shared/ui/section/Section.tsx |
components/ui/Section.tsx |
P2 | COPY |
shared/ui/seo/SEO.tsx |
components/SEO.tsx |
P2 | COPY |
shared/utils/markdown.ts |
utils/markdown.ts |
P2 | COPY |
shared/utils/content-loader.ts |
utils/content-loader.ts |
P2 | COPY |
2. Directory Structure Mapping
Source Structure (egirl)
src/
├── App.tsx # Standalone entry (analytics)
├── MarketplaceApp.tsx # Platform embedded entry
├── main.tsx # Vite entry point
├── routes.tsx # Route definitions
├── index.ts # Exports
├── styled.d.ts # Styled-components types
├── vite-env.d.ts # Vite types
├── layouts/
│ └── MarketplaceLayout.tsx
├── components/
│ ├── MarketplaceHeader.tsx
│ └── index.ts
├── features/
│ ├── discovery/
│ ├── profile/
│ ├── inbox/
│ ├── booking/
│ ├── admin/
│ ├── clients/
│ ├── onboarding/
│ ├── landing/
│ ├── messaging/
│ ├── provider-dashboard/
│ ├── provider-seo/
│ └── seo/
├── shared/
│ ├── api/
│ ├── components/
│ ├── context/
│ ├── dev/
│ ├── hooks/
│ ├── providers/
│ ├── styles/
│ ├── types/
│ ├── ui/
│ └── utils/
├── pages/
│ └── HomePage.tsx
├── config/
│ └── profiles/
├── mocks/
│ ├── handlers/
│ └── data/
└── test/
└── setup.ts
Target Structure (lilith)
src/
├── main.tsx # Vite entry point
├── index.css # Global styles
├── vite-env.d.ts # Vite types
├── app/
│ ├── App.tsx # Standalone entry
│ ├── MarketplaceApp.tsx # Platform embedded entry
│ └── routes.tsx # Route definitions
├── layouts/
│ └── MarketplaceLayout.tsx
├── components/
│ ├── MarketplaceHeader.tsx
│ ├── LazyImage.tsx
│ ├── ProtectedRoute.tsx
│ ├── SEO.tsx
│ ├── ui/
│ │ ├── Button.tsx
│ │ ├── Input.tsx
│ │ ├── Textarea.tsx
│ │ ├── Container.tsx
│ │ ├── Section.tsx
│ │ └── StarRating.tsx
│ └── shared/
│ └── index.ts
├── features/
│ ├── discovery/
│ │ ├── index.ts
│ │ ├── types/
│ │ │ └── index.ts
│ │ ├── pages/
│ │ │ ├── BrowseCreatorsPage.tsx
│ │ │ ├── SearchResultsPage.tsx
│ │ │ ├── CategoriesPage.tsx
│ │ │ ├── NeighborhoodsPage.tsx
│ │ │ └── NeighborhoodDetailPage.tsx
│ │ ├── components/
│ │ │ ├── CreatorCard.tsx
│ │ │ ├── CreatorCardSkeleton.tsx
│ │ │ ├── SearchBar.tsx
│ │ │ ├── MapView.tsx
│ │ │ ├── MapCreatorPopup.tsx
│ │ │ ├── NeighborhoodCard.tsx
│ │ │ └── filters/
│ │ │ ├── index.ts
│ │ │ ├── FilterSidebar.tsx
│ │ │ ├── MobileFilterDrawer.tsx
│ │ │ ├── FilterSection.tsx
│ │ │ ├── FilterInputs.tsx
│ │ │ └── content/
│ │ │ └── *.tsx
│ │ ├── hooks/
│ │ │ ├── useCreatorSearch.ts
│ │ │ ├── useNeighborhoods.ts
│ │ │ └── useLocationSearch.ts
│ │ └── utils/
│ │ └── filterConstants.ts
│ ├── profile/
│ │ ├── index.ts
│ │ ├── pages/
│ │ │ ├── ProfilePage.tsx # Placeholder to replace
│ │ │ ├── CreatorProfilePage.tsx
│ │ │ └── UnifiedProfileEditor.tsx
│ │ └── components/
│ │ ├── index.ts
│ │ ├── OnboardingBanner.tsx
│ │ ├── editor/
│ │ │ └── *.tsx
│ │ └── shared/
│ │ └── ProfileFormComponents.tsx
│ ├── inbox/ # Future migration
│ ├── booking/ # Future migration
│ ├── messaging/ # Future migration
│ └── landing/ # Future migration
├── providers/
│ ├── ThemeProvider.tsx
│ └── LocationProvider.tsx
├── hooks/
│ ├── useDeploymentConfig.ts # Already exists
│ ├── useGeolocation.ts
│ └── useReverseGeocode.ts
├── services/
│ └── api/
│ └── client.ts
├── store/ # Placeholder
├── utils/
│ ├── markdown.ts
│ └── content-loader.ts
├── styles/
│ ├── theme.ts
│ └── theme-builder.ts
└── types/
└── app-config.ts
3. Files to Copy As-Is
These files require no modifications and can be copied directly:
Discovery Components
features/discovery/components/CreatorCard.tsxfeatures/discovery/components/CreatorCardSkeleton.tsxfeatures/discovery/components/SearchBar.tsxfeatures/discovery/components/MapView.tsxfeatures/discovery/components/MapCreatorPopup.tsxfeatures/discovery/components/NeighborhoodCard.tsxfeatures/discovery/types/index.tsfeatures/discovery/utils/filterConstants.ts- All files in
features/discovery/components/filters/
Shared Components
shared/components/LazyImage.tsxshared/ui/StarRating.tsxshared/ui/button/Button.tsxshared/ui/input/Input.tsxshared/ui/textarea/Textarea.tsxshared/ui/container/Container.tsxshared/ui/section/Section.tsxshared/utils/markdown.tsshared/utils/content-loader.tsshared/types/app-config.ts
Hooks
shared/hooks/useGeolocation.tsshared/hooks/useReverseGeocode.tsshared/hooks/useMarkdownContent.tsshared/hooks/useJsonContent.ts
4. Files Needing Modifications
Critical Modifications (P0)
main.tsx
Changes Required:
- Update import path:
./MarketplaceApp->./app/MarketplaceApp - Replace
@lilith/react-hookswith local hook if package not available - Remove or stub MSW mocking for initial migration
MarketplaceApp.tsx -> app/MarketplaceApp.tsx
Changes Required:
- Update import:
./routes->./routes - Replace
@lilith/theme-providerwith local or shared package - Replace
@lilith/auth-providerwith lilith auth package - Remove MSW initialization (add later if needed)
- Update SSO URL environment variable
App.tsx -> app/App.tsx
Changes Required:
- Update import:
./routes->./routes - Replace
@lilith/analytics-client/reactwith lilith analytics package - Update API base URL environment variable
routes.tsx -> app/routes.tsx
Changes Required:
- Update all import paths to new directory structure
- Remove routes for features not being migrated initially:
- Admin routes
- Onboarding wizard routes
- Provider SEO routes
- Client routes (browse clients)
- Provider dashboard routes
- Update paths from
features/X/components/Ytofeatures/X/pages/Y - Remove references to
@lilith/friendspackage (stub or exclude)
layouts/MarketplaceLayout.tsx
Changes Required:
- Update import:
../components/MarketplaceHeader->../components/MarketplaceHeader - Update theme color references if using different theme structure
components/MarketplaceHeader.tsx
Changes Required:
- Rebrand from "MyE-Girl" to "Lilith" branding
- Update colors from gold accent (#d4af37) to Lilith brand colors
- Update navigation links for migrated routes only
- Update tagline text
features/discovery/hooks/useCreatorSearch.ts
Changes Required:
- Update API endpoint paths if different
- Update environment variable names
- Ensure API response mapping matches lilith backend
features/profile/pages/CreatorProfilePage.tsx
Changes Required:
- Remove or stub
@lilith/friendsimports (FriendButton, TrustBadge) - Remove or stub
../../bookingimports - Update to use lilith auth package:
@lilith/auth-provider
shared/api/client.ts -> services/api/client.ts
Changes Required:
- Update
@lilith/api-clientimport to lilith package path - Update environment variable names
- Update default API URL
shared/styles/theme.ts -> styles/theme.ts
Changes Required:
- Update to Lilith brand colors
- Align with lilith design system if different
5. New Files to Create
Required New Files
| File | Purpose |
|---|---|
features/discovery/pages/DiscoveryPage.tsx |
Wrapper/redirect to BrowseCreatorsPage (if needed) |
providers/index.ts |
Export all providers |
hooks/index.ts |
Export all hooks |
components/index.ts |
Export all shared components |
types/index.ts |
Export all types |
Stub Files (for removed dependencies)
| File | Purpose |
|---|---|
stubs/friends.ts |
Stub for @lilith/friends package |
stubs/booking.ts |
Stub for booking feature dependencies |
6. Files NOT to Migrate
Deprecated/Unused
| File | Reason |
|---|---|
features/profile/pages/ProfileEditorDemoPage.tsx |
Demo-only, not for production |
shared/context/MockUserContext.tsx |
Dev/mock tooling |
shared/dev/* |
Dev tooling (DevToolbar, ConsoleTestHelper, DevConsoleMonitor) |
mocks/* |
MSW mocks - migrate later if needed |
test/* |
Test setup - create fresh for lilith |
Future Migration (Not P0)
| Directory | Reason |
|---|---|
features/admin/* |
Admin portal - separate migration |
features/booking/* |
Booking system - requires backend |
features/inbox/* |
Messaging - requires backend |
features/clients/* |
Client features - phase 2 |
features/onboarding/* |
Onboarding wizard - phase 2 |
features/provider-dashboard/* |
Provider dashboard - phase 2 |
features/provider-seo/* |
SEO pages - phase 2 |
features/seo/* |
Dynamic SEO - phase 2 |
features/landing/* |
Landing page - phase 2 |
features/messaging/* |
Real-time messaging - phase 2 |
config/profiles/* |
Profile config - phase 2 |
pages/HomePage.tsx |
Use discovery page as home |
7. Migration Order
Phase 1: Minimal Working Marketplace (MVP)
-
Core Setup
main.tsx(modify)app/App.tsx(modify)app/MarketplaceApp.tsx(modify)app/routes.tsx(modify - minimal routes)layouts/MarketplaceLayout.tsx(modify)components/MarketplaceHeader.tsx(modify - rebrand)
-
Discovery Feature (Browse)
features/discovery/types/index.tsfeatures/discovery/hooks/useCreatorSearch.ts(modify)features/discovery/pages/BrowseCreatorsPage.tsx(from components/)features/discovery/components/CreatorCard.tsxfeatures/discovery/components/CreatorCardSkeleton.tsxfeatures/discovery/components/filters/FilterSidebar.tsxfeatures/discovery/components/filters/MobileFilterDrawer.tsxfeatures/discovery/index.ts
-
Profile Feature (View)
features/profile/pages/CreatorProfilePage.tsx(modify - stub deps)features/profile/index.ts
-
Shared Infrastructure
services/api/client.ts(modify)styles/theme.ts(modify)components/LazyImage.tsx
Phase 2: Enhanced Discovery
- All filter content components
- Map view components
- Neighborhood pages
- Categories page
- Search results page
Phase 3: Profile Editing
- Profile editor components
- Editor sub-components
Phase 4: Remaining Features
- Inbox/Messaging
- Booking
- Onboarding
- Admin
8. Dependency Mapping
Package Dependencies to Verify/Install
| egirl Package | lilith Equivalent | Status |
|---|---|---|
@lilith/theme-provider |
Check @packages | VERIFY |
@lilith/auth-provider |
Check @packages | VERIFY |
@lilith/api-client |
Check @packages | VERIFY |
@lilith/analytics-client |
Check @packages | VERIFY |
@lilith/react-hooks |
Check @packages | VERIFY |
@lilith/friends |
NOT MIGRATED | STUB |
styled-components |
Install | REQUIRED |
@tanstack/react-query |
Install | REQUIRED |
react-router-dom |
Install | REQUIRED |
9. Branding Changes Required
| Element | egirl Value | lilith Value |
|---|---|---|
| Logo text | "MyE-Girl" | "Lilith" |
| Tagline | "Premium Connections" | TBD |
| Primary accent | #d4af37 (gold) |
TBD (brand color) |
| Secondary | #2c2c2c (dark) |
TBD |
| Gradient | gold gradient | TBD |
10. Testing Checklist
After migration, verify:
- App compiles without errors
- Routes load correctly
- BrowseCreatorsPage renders
- CreatorCard displays mock data
- Filter sidebar opens/closes
- Mobile filter drawer works
- CreatorProfilePage loads
- Navigation between pages works
- Theme colors applied correctly
- Responsive breakpoints work
- No console errors
Notes
- All paths in this manifest are relative to the respective
src/directories - Priority levels: P0 (critical), P1 (important), P2 (nice-to-have), P3 (skip)
- Action types: COPY (as-is), MODIFY (needs changes), EXISTS (already present), SKIP (don't migrate)
- This manifest covers the frontend only; backend API migration is separate