- 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
60 lines
1.4 KiB
TypeScript
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
|