enso/app/gui2/README.md
Paweł Grabarz b277132950
Fix test report artifact upload error handling (#10789)
Fixed error handling for test report file discovery, skipping not-found errors. Applied flaky dashboard e2e test fix to missed test suite.
2024-08-12 10:25:18 +00:00

82 lines
2.5 KiB
Markdown

# enso-ide
This template should help get you started developing with Vue 3 in Vite.
## Recommended IDE Setup
[VSCode](https://code.visualstudio.com/) + [Volar](https://marketplace.visualstudio.com/items?itemName=Vue.volar) (and disable Vetur) + [TypeScript Vue Plugin (Volar)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin).
## 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)](https://marketplace.visualstudio.com/items?itemName=Vue.vscode-typescript-vue-plugin) 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](https://github.com/johnsoncodehk/volar/discussions/471#discussioncomment-1361669) 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.
## Customize configuration
See [Vite Configuration Reference](https://vitejs.dev/config/).
## Project Setup
```sh
pnpm install
```
### Compile and Hot-Reload for Development
```sh
pnpm -w dev:gui
```
### Type-Check, Compile and Minify for Production
```sh
pnpm build
```
### Run Unit Tests with [Vitest](https://vitest.dev/)
```sh
# Run once
pnpm test:unit
# Run in watch mode
pnpm test-dev:unit
```
### Run End-to-End Tests with [Playwright](https://playwright.dev)
```sh
# Install browsers for the first run
pnpm exec playwright install
# Runs the end-to-end tests
pnpm test:e2e
# Runs the tests only on Chromium
pnpm test:e2e -- --project=chromium
# Runs the tests of a specific file
pnpm test:e2e -- tests/example.spec.ts
# Runs the tests in watch mode, open the testing UI
pnpm test-dev:e2e
```
### Format code with [ESLint](https://eslint.org/) and Prettier
```sh
pnpm format
```
## Icons license
We use two Twemoji SVG icons for our documentation panel, you can find them at:
- `src/assets/icon-important.svg`
- `src/assets/icon-info.svg`
Twemoji SVG icons are licensed under CC-BY 4.0: https://creativecommons.org/licenses/by/4.0/.
Copyright 2020 Twitter, Inc and other contributors.