1.5 KiB
Web
Nuxt 4 + Vue 3 frontend of Oxynote. Ships two ways: a server-rendered web app and an Electron desktop app.
Tools and dependencies:
- Favicon processing: https://realfavicongenerator.net
- Nuxt documentation
- Vue documentation
- VueUse documentation
- Tiptap documentation
- Shadcn-vue documentation
I18N
All text needs to be placed in the i18n/ directory.
We use a separate package for validation and it uses its own internal error messages: https://vee-validate.logaretm.com/v4/guide/i18n/
Setup
Install dependencies and run the prepare step:
pnpm run setup
Environment variables are read from .env — make setup at the repository
root creates it from docker/env/web.example.env.
Development
Start the web development server on http://localhost:3000 (the backend
stack must be running — make dev at the repository root does both):
pnpm run start:dev:web
Run the desktop app against the same dev server:
pnpm run start:dev:desktop
Production
Build the web application:
pnpm run build:web
Package the desktop application (or build installers with make:desktop):
pnpm run package:desktop
QA
pnpm run qa # check-types + check-lint + check-fmt
pnpm run qa-fix # check-types + lint --fix + prettier --write