mirror of
https://github.com/pacnpal/thrillwiki_django_no_react.git
synced 2026-02-05 18:15:18 -05:00
2.9 KiB
2.9 KiB
Source Mapping: React → Nuxt
Quick reference for mapping thrillwiki-87 paths to thrillwiki_django_no_react paths.
Directory Mappings
| React (thrillwiki-87) | Nuxt (thrillwiki_django_no_react) |
|---|---|
src/components/ |
frontend/app/components/ |
src/pages/ |
frontend/app/pages/ |
src/hooks/ |
frontend/app/composables/ |
src/types/ |
frontend/app/types/ |
src/lib/ |
frontend/app/utils/ |
src/contexts/ |
frontend/app/stores/ (Pinia) |
docs/ |
source_docs/ |
supabase/migrations/ |
backend/apps/*/models.py |
Component Mappings (shadcn-ui → Nuxt UI)
| shadcn-ui | Nuxt UI |
|---|---|
<Button> |
<UButton> |
<Card> |
<UCard> |
<Dialog> |
<UModal> |
<Input> |
<UInput> |
<Select> |
<USelect> / <USelectMenu> |
<Tabs> |
<UTabs> |
<Table> |
<UTable> |
<Badge> |
<UBadge> |
<Avatar> |
<UAvatar> |
<Tooltip> |
<UTooltip> |
<Sheet> |
<USlideover> |
<AlertDialog> |
<UModal> + confirm pattern |
<Skeleton> |
<USkeleton> |
<Textarea> |
<UTextarea> |
<Checkbox> |
<UCheckbox> |
<RadioGroup> |
<URadioGroup> |
<Switch> |
<UToggle> |
<DropdownMenu> |
<UDropdown> |
<Command> |
<UCommandPalette> |
<Popover> |
<UPopover> |
Page Mappings
| React Page | Nuxt Page |
|---|---|
Index.tsx |
pages/index.vue |
Parks.tsx |
pages/parks/index.vue |
ParkDetail.tsx |
pages/parks/[park_slug]/index.vue |
Rides.tsx |
pages/rides/index.vue |
RideDetail.tsx |
pages/parks/[park_slug]/rides/[ride_slug].vue |
Manufacturers.tsx |
pages/manufacturers/index.vue |
ManufacturerDetail.tsx |
pages/manufacturers/[slug].vue |
Designers.tsx |
pages/designers/index.vue |
DesignerDetail.tsx |
pages/designers/[slug].vue |
Operators.tsx |
pages/operators/index.vue |
OperatorDetail.tsx |
pages/operators/[slug].vue |
ParkOwners.tsx |
pages/owners/index.vue |
PropertyOwnerDetail.tsx |
pages/owners/[slug].vue |
Auth.tsx |
pages/auth/login.vue, pages/auth/signup.vue |
Profile.tsx |
pages/profile/index.vue |
Search.tsx |
pages/search.vue |
AdminDashboard.tsx |
pages/admin/index.vue |
Hook → Composable Mappings
| React Hook | Vue Composable |
|---|---|
useAuth.tsx |
useAuth.ts |
useSearch.tsx |
useSearchHistory.ts |
useModerationQueue.ts |
useModeration.ts |
useProfile.tsx |
(inline in pages) |
useLocations.ts |
useParksApi.ts |
useUnitPreferences.ts |
useUnits.ts |
API Endpoint Translation
| Supabase RPC/Query | Django API |
|---|---|
supabase.from('parks') |
GET /api/v1/parks/ |
supabase.rpc('search_*') |
GET /api/v1/search/ |
supabase.auth.* |
/api/v1/auth/* |
| Edge Functions | Django views in backend/apps/*/views.py |