diff --git a/docs b/docs index ac57a0a..98ddc19 160000 --- a/docs +++ b/docs @@ -1 +1 @@ -Subproject commit ac57a0a709d33f26462c191edb6cb454791acbad +Subproject commit 98ddc19456985d3a057581f2d6f8db665bcdc1ef diff --git a/package.json b/package.json index 866b3c4..0dbf6ad 100644 --- a/package.json +++ b/package.json @@ -6,6 +6,7 @@ "scripts": { "dev": "pnpm --filter @novai/app dev", "build": "pnpm --filter @novai/app build", + "test": "vitest run", "typecheck": "tsc --build", "commitlint": "commitlint --edit", "prepare": "husky" @@ -16,6 +17,7 @@ "commitlint-plugin-function-rules": "^4.3.2", "husky": "^9.1.7", "typescript": "^6.0.2", - "vite": "^6.2.0" + "vite": "^6.2.0", + "vitest": "^4.1.7" } } diff --git a/packages/app/package.json b/packages/app/package.json index c5bd55c..4fcd0fa 100644 --- a/packages/app/package.json +++ b/packages/app/package.json @@ -11,17 +11,20 @@ }, "dependencies": { "@novai/core": "workspace:*", + "markdown-it": "^14.2.0", "pinia": "^3.0.4", "vue": "^3.5.13", "vue-router": "^5.0.4" }, "devDependencies": { "@tailwindcss/vite": "^4.2.2", + "@types/markdown-it": "^14.1.2", "@vitejs/plugin-vue": "^5.2.1", "sass": "^1.98.0", "tailwindcss": "^4.2.2", "typescript": "^6.0.2", "vite": "^6.2.0", + "vite-plugin-vue-devtools": "^8.1.2", "vue-tsc": "^3.2.6" } } diff --git a/packages/app/src/app/router.ts b/packages/app/src/app/router.ts index 7bade65..77dfbae 100644 --- a/packages/app/src/app/router.ts +++ b/packages/app/src/app/router.ts @@ -1,5 +1,8 @@ import { createRouter, createWebHistory } from 'vue-router' +import HomeView from '../views/HomeView.vue' +import ProjectView from '../views/ProjectView.vue' +import SettingsView from '../views/SettingsView.vue' import SessionTestView from '../views/SessionTestView.vue' import TestLabView from '../views/TestLabView.vue' @@ -8,7 +11,18 @@ export const router = createRouter({ routes: [ { path: '/', - redirect: '/test', + name: 'home', + component: HomeView, + }, + { + path: '/project/:id', + name: 'project', + component: ProjectView, + }, + { + path: '/project/:id/settings', + name: 'settings', + component: SettingsView, }, { path: '/test', diff --git a/packages/app/src/components/chat/MessageItem.vue b/packages/app/src/components/chat/MessageItem.vue new file mode 100644 index 0000000..7ee81de --- /dev/null +++ b/packages/app/src/components/chat/MessageItem.vue @@ -0,0 +1,123 @@ + + + diff --git a/packages/app/src/components/file-tree/TreeNode.vue b/packages/app/src/components/file-tree/TreeNode.vue new file mode 100644 index 0000000..7de3f99 --- /dev/null +++ b/packages/app/src/components/file-tree/TreeNode.vue @@ -0,0 +1,132 @@ + + + diff --git a/packages/app/src/components/layout/ChatPanel.vue b/packages/app/src/components/layout/ChatPanel.vue new file mode 100644 index 0000000..d06ce66 --- /dev/null +++ b/packages/app/src/components/layout/ChatPanel.vue @@ -0,0 +1,183 @@ + + +