sdss / zora

Web app for SDSS-V
1 stars 0 forks source link

zora

This repo is for the new wep app front-end for SDSS-V

Node.js CI

Recommended IDE Setup

VSCode + Volar (and disable Vetur) + TypeScript Vue Plugin (Volar).

Type Support for .vue Imports in TS

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:

  1. Disable the built-in TypeScript Extension 1) Run Extensions: Show Built-in Extensions from VSCode's command palette 2) Find TypeScript and JavaScript Language Features, right click and select Disable (Workspace)
  2. Reload the VSCode window by running Developer: Reload Window from the command palette.

Project Libraries

This project is scaffolded with the following libraries:

Project Setup

Git clone this repo and run the following

# npm
npm install

Installing New Dependencies

# install a new package and add it to the "dependencies" section of package.json
npm install [package]

# install a new package and add it to the "devDependencies" section of package.json
npm install -D [package]

Compiles and Hot-Reloads for Development

# npm
npm run dev

Type-Check, Compile and Minify for Production

# npm
npm run build

Run Unit Tests with Vitest

npm run test:unit

Run End-to-End Tests with Playwright

# Install browsers for the first run
npx playwright install

# When testing on CI, must build the project first
npm run build

# Runs the end-to-end tests
npm run test:e2e
# Runs the tests only on Chromium
npm run test:e2e -- --project=chromium
# Runs the tests of a specific file
npm run test:e2e -- tests/example.spec.ts
# Runs the tests in debug mode
npm run test:e2e -- --debug

Lints and fixes files with ESLint

# npm
npm run lint

Format the Code with Prettier

# npm
npm run format

Customize configuration

See Vite Configuration Reference.

Awesome Links

Source

This repo was created using modified instructions from the Vuetify installation, using nodejs 9.5.1.

  1. run npm create vuetify
  2. Select the following options
    1. Essentials (Vue, VueRouter, Pinia)
    2. Select "yes" to Typescript
    3. Select "npm" for how to install dependencies
  3. In package.json, update the following dependencies
    1. In dependencies, update
      1. vue: ^3.2.47
      2. vue-router: ^4.1.6
    2. In 'devDependencies', update
      1. @vitejs/plugin-vue: ^4.0.0
      2. vite: ^4.2.0
      3. vite-plugin-vuetify: ^1.0.0
  4. Run npm install to install initial package
  5. Install Vitest, Playwright, and Vue Test Utils