mirror of
https://github.com/bookorbit/bookorbit.git
synced 2026-11-03 08:21:39 -06:00
f3a2689e21
Bumps the production-dependencies group with 16 updates: | Package | From | To | | --- | --- | --- | | [@lucide/vue](https://github.com/lucide-icons/lucide/tree/HEAD/packages/vue) | `1.23.0` | `1.24.0` | | [@tiptap/extension-link](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-link) | `3.27.1` | `3.27.3` | | [@tiptap/pm](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm) | `3.27.1` | `3.27.3` | | [@tiptap/starter-kit](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit) | `3.27.1` | `3.27.3` | | [@tiptap/vue-3](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/vue-3) | `3.27.1` | `3.27.3` | | [@fastify/cookie](https://github.com/fastify/fastify-cookie) | `11.0.2` | `11.1.1` | | [@fastify/helmet](https://github.com/fastify/fastify-helmet) | `13.0.2` | `13.1.0` | | [@fastify/multipart](https://github.com/fastify/fastify-multipart) | `10.0.0` | `10.1.0` | | [@fastify/static](https://github.com/fastify/fastify-static) | `9.1.3` | `9.3.0` | | [@nestjs/common](https://github.com/nestjs/nest/tree/HEAD/packages/common) | `11.1.27` | `11.1.28` | | [@nestjs/core](https://github.com/nestjs/nest/tree/HEAD/packages/core) | `11.1.27` | `11.1.28` | | [@nestjs/platform-fastify](https://github.com/nestjs/nest/tree/HEAD/packages/platform-fastify) | `11.1.27` | `11.1.28` | | [@nestjs/platform-socket.io](https://github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io) | `11.1.27` | `11.1.28` | | [@nestjs/websockets](https://github.com/nestjs/nest/tree/HEAD/packages/websockets) | `11.1.27` | `11.1.28` | | [fastify](https://github.com/fastify/fastify) | `5.9.0` | `5.10.0` | | [mysql2](https://github.com/sidorares/node-mysql2) | `3.22.5` | `3.22.6` | Updates `@lucide/vue` from 1.23.0 to 1.24.0 - [Release notes](https://github.com/lucide-icons/lucide/releases) - [Commits](https://github.com/lucide-icons/lucide/commits/1.24.0/packages/vue) Updates `@tiptap/extension-link` from 3.27.1 to 3.27.3 - [Release notes](https://github.com/ueberdosis/tiptap/releases) - [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-link/CHANGELOG.md) - [Commits](https://github.com/ueberdosis/tiptap/commits/v3.27.3/packages/extension-link) Updates `@tiptap/pm` from 3.27.1 to 3.27.3 - [Release notes](https://github.com/ueberdosis/tiptap/releases) - [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/pm/CHANGELOG.md) - [Commits](https://github.com/ueberdosis/tiptap/commits/v3.27.3/packages/pm) Updates `@tiptap/starter-kit` from 3.27.1 to 3.27.3 - [Release notes](https://github.com/ueberdosis/tiptap/releases) - [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/starter-kit/CHANGELOG.md) - [Commits](https://github.com/ueberdosis/tiptap/commits/v3.27.3/packages/starter-kit) Updates `@tiptap/vue-3` from 3.27.1 to 3.27.3 - [Release notes](https://github.com/ueberdosis/tiptap/releases) - [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/vue-3/CHANGELOG.md) - [Commits](https://github.com/ueberdosis/tiptap/commits/v3.27.3/packages/vue-3) Updates `@fastify/cookie` from 11.0.2 to 11.1.1 - [Release notes](https://github.com/fastify/fastify-cookie/releases) - [Commits](https://github.com/fastify/fastify-cookie/compare/v11.0.2...v11.1.1) Updates `@fastify/helmet` from 13.0.2 to 13.1.0 - [Release notes](https://github.com/fastify/fastify-helmet/releases) - [Commits](https://github.com/fastify/fastify-helmet/compare/v13.0.2...v13.1.0) Updates `@fastify/multipart` from 10.0.0 to 10.1.0 - [Release notes](https://github.com/fastify/fastify-multipart/releases) - [Commits](https://github.com/fastify/fastify-multipart/compare/v10.0.0...v10.1.0) Updates `@fastify/static` from 9.1.3 to 9.3.0 - [Release notes](https://github.com/fastify/fastify-static/releases) - [Commits](https://github.com/fastify/fastify-static/compare/v9.1.3...v9.3.0) Updates `@nestjs/common` from 11.1.27 to 11.1.28 - [Release notes](https://github.com/nestjs/nest/releases) - [Commits](https://github.com/nestjs/nest/commits/v11.1.28/packages/common) Updates `@nestjs/core` from 11.1.27 to 11.1.28 - [Release notes](https://github.com/nestjs/nest/releases) - [Commits](https://github.com/nestjs/nest/commits/v11.1.28/packages/core) Updates `@nestjs/platform-fastify` from 11.1.27 to 11.1.28 - [Release notes](https://github.com/nestjs/nest/releases) - [Commits](https://github.com/nestjs/nest/commits/v11.1.28/packages/platform-fastify) Updates `@nestjs/platform-socket.io` from 11.1.27 to 11.1.28 - [Release notes](https://github.com/nestjs/nest/releases) - [Commits](https://github.com/nestjs/nest/commits/v11.1.28/packages/platform-socket.io) Updates `@nestjs/websockets` from 11.1.27 to 11.1.28 - [Release notes](https://github.com/nestjs/nest/releases) - [Commits](https://github.com/nestjs/nest/commits/v11.1.28/packages/websockets) Updates `fastify` from 5.9.0 to 5.10.0 - [Release notes](https://github.com/fastify/fastify/releases) - [Commits](https://github.com/fastify/fastify/compare/v5.9.0...v5.10.0) Updates `mysql2` from 3.22.5 to 3.22.6 - [Release notes](https://github.com/sidorares/node-mysql2/releases) - [Changelog](https://github.com/sidorares/node-mysql2/blob/master/Changelog.md) - [Commits](https://github.com/sidorares/node-mysql2/compare/v3.22.5...v3.22.6) --- updated-dependencies: - dependency-name: "@lucide/vue" dependency-version: 1.24.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies - dependency-name: "@tiptap/extension-link" dependency-version: 3.27.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies - dependency-name: "@tiptap/pm" dependency-version: 3.27.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies - dependency-name: "@tiptap/starter-kit" dependency-version: 3.27.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies - dependency-name: "@tiptap/vue-3" dependency-version: 3.27.3 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies - dependency-name: "@fastify/cookie" dependency-version: 11.1.1 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies - dependency-name: "@fastify/helmet" dependency-version: 13.1.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies - dependency-name: "@fastify/multipart" dependency-version: 10.1.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies - dependency-name: "@fastify/static" dependency-version: 9.3.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies - dependency-name: "@nestjs/common" dependency-version: 11.1.28 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies - dependency-name: "@nestjs/core" dependency-version: 11.1.28 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies - dependency-name: "@nestjs/platform-fastify" dependency-version: 11.1.28 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies - dependency-name: "@nestjs/platform-socket.io" dependency-version: 11.1.28 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies - dependency-name: "@nestjs/websockets" dependency-version: 11.1.28 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies - dependency-name: fastify dependency-version: 5.10.0 dependency-type: direct:production update-type: version-update:semver-minor dependency-group: production-dependencies - dependency-name: mysql2 dependency-version: 3.22.6 dependency-type: direct:production update-type: version-update:semver-patch dependency-group: production-dependencies ... Signed-off-by: dependabot[bot] <support@github.com> Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
BookOrbit - Client
Vue 3 SPA built with Vite and Tailwind CSS v4.
Running
From the repo root: pnpm dev (starts both server and client).
Client only: pnpm dev (from this directory). Runs at http://localhost:5173.
The Vite dev server proxies /api and /socket.io requests to the backend at localhost:3000.
IDE setup
- VS Code: Install the Vue (Official) extension. Disable Vetur if installed.
- WebStorm / IntelliJ: Vue support is built in. Enable TypeScript service for
.vuefiles. - Browser: Install Vue.js devtools and enable Custom Object Formatters in DevTools settings.
Project layout
src/
├── features/ Feature modules (one folder per domain)
│ ├── auth/ Login, registration, password reset
│ ├── book/ Book detail, covers, metadata
│ ├── library/ Library management
│ ├── collection/ Book collections
│ ├── smart-scope/ Saved search views
│ ├── scanner/ Scan progress UI
│ ├── reader/ Book reader (epub, pdf, cbz)
│ ├── settings/ User settings
│ └── admin/ Admin panel (users, roles, settings)
├── components/ Shared components (header, sidebar, icons)
│ └── ui/ Reusable UI primitives (button, dialog, etc.)
├── composables/ Global composables
├── views/ Route-level page components
├── router/ Vue Router config and guards
├── lib/ Utilities (api client, helpers)
├── stores/ Pinia stores (theme only - prefer composables)
└── assets/ CSS, fonts, static assets
Testing
pnpm test:unit # run unit tests
pnpm test:cov # run unit tests with coverage
Key conventions
- All components use
<script setup lang="ts">(Composition API only). - Feature state lives in composables (
features/<name>/composables/use*.ts), not global stores. - HTTP calls use the native
fetchAPI viasrc/lib/api.ts. - Styling with Tailwind CSS v4 utility classes. Theme tokens are CSS variables in
src/assets/main.css. - Icons from
@lucide/vueonly. - Shared types imported from
@bookorbit/types.