Files
dreamweaver/admin-frontend/src/router.ts
zhangtuo e9d7f8832a Initial commit: clean project structure
- Backend: FastAPI + SQLAlchemy + Celery (Python 3.11+)
- Frontend: Vue 3 + TypeScript + Pinia + Tailwind
- Admin Frontend: separate Vue 3 app for management
- Docker Compose: 9 services orchestration
- Specs: design prototypes, memory system PRD, product roadmap

Cleanup performed:
- Removed temporary debug scripts from backend root
- Removed deprecated admin_app.py (embedded UI)
- Removed duplicate docs from admin-frontend
- Updated .gitignore for Vite cache and egg-info
2026-01-20 18:20:03 +08:00

60 lines
1.4 KiB
TypeScript

import { createRouter, createWebHistory } from 'vue-router'
const router = createRouter({
history: createWebHistory(),
routes: [
{
path: '/',
redirect: '/console/providers',
},
{
path: '/my-stories',
name: 'my-stories',
component: () => import('./views/MyStories.vue'),
},
{
path: '/profiles',
name: 'profiles',
component: () => import('./views/ChildProfiles.vue'),
},
{
path: '/profiles/:id',
name: 'profile-detail',
component: () => import('./views/ChildProfileDetail.vue'),
},
{
path: '/profiles/:id/timeline',
name: 'profile-timeline',
component: () => import('./views/ChildProfileTimeline.vue'),
},
{
path: '/universes',
name: 'universes',
component: () => import('./views/Universes.vue'),
},
{
path: '/universes/:id',
name: 'universe-detail',
component: () => import('./views/UniverseDetail.vue'),
},
{
path: '/story/:id',
name: 'story-detail',
component: () => import('./views/StoryDetail.vue'),
},
{
path: '/storybook/view',
name: 'storybook-viewer',
component: () => import('./views/StorybookViewer.vue'),
},
{
path: '/console/providers',
name: 'admin-providers',
component: () => import('./views/AdminProviders.vue'),
meta: { requiresAdmin: true },
},
],
})
export default router