.vscode | ||
public | ||
src | ||
.dir-locals.el | ||
.env.example | ||
.envrc | ||
.eslintrc.cjs | ||
.gitignore | ||
.prettierrc.toml | ||
env.d.ts | ||
flake.lock | ||
flake.nix | ||
index.html | ||
LICENSE.md | ||
package-lock.json | ||
package.json | ||
README.md | ||
TODOs.org | ||
tsconfig.app.json | ||
tsconfig.json | ||
tsconfig.node.json | ||
tsconfig.vitest.json | ||
vite.config.ts | ||
vitest.config.ci.ts | ||
vitest.config.local.ts |
gege-jdr
This is a website for managing my TTRPG campains with some friends. It works with a PocketBase
Recommended IDE Setup
VSCode + Volar (and disable Vetur) + TypeScript Vue Plugin (Volar).
Type Support for .vue
Imports in TS with VSCode
TypeScript cannot handle type information for .vue
imports by default, so we replace the tsc
CLI with vue-tsc
for type checking. In editors, we need TypeScript Vue Plugin (Volar) to make the TypeScript language service aware of .vue
types.
If the standalone TypeScript plugin doesn't feel fast enough to you, Volar has also implemented a Take Over Mode that is more performant. You can enable it by the following steps:
- Disable the built-in TypeScript Extension
- Run
Extensions: Show Built-in Extensions
from VSCode's command palette - Find
TypeScript and JavaScript Language Features
, right click and selectDisable (Workspace)
- Run
- Reload the VSCode window by running
Developer: Reload Window
from the command palette.
Setup that I use
Emacs + lsp-mode + Volar + web-mode. Take a look at my configuration.
Project Setup
yarn set version stable
yarn
Compile and Hot-Reload for Development
yarn dev
Type-Check, Compile and Minify for Production
yarn build
Run Unit Tests with Vitest
yarn test:unit
Lint with ESLint
yarn lint