Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/onroerenderfgoed/vue_component_library
Library with all Vue.js components for Onroerend Erfgoed
https://github.com/onroerenderfgoed/vue_component_library
lib
Last synced: about 4 hours ago
JSON representation
Library with all Vue.js components for Onroerend Erfgoed
- Host: GitHub
- URL: https://github.com/onroerenderfgoed/vue_component_library
- Owner: OnroerendErfgoed
- License: mit
- Created: 2023-04-21T12:19:23.000Z (over 1 year ago)
- Default Branch: main
- Last Pushed: 2024-10-18T07:54:13.000Z (about 1 month ago)
- Last Synced: 2024-10-18T07:57:33.637Z (about 1 month ago)
- Topics: lib
- Language: TypeScript
- Homepage:
- Size: 10.7 MB
- Stars: 0
- Watchers: 8
- Forks: 0
- Open Issues: 18
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Vue component library
Vue components based on @govflanders Webuniversum components with our own branding applied.
## 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) + [Vue VSCode Snippets](https://marketplace.visualstudio.com/items?itemName=sdras.vue-vscode-snippets)
## 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/).
## Code style
### Pre-commit hook
See [Pre-commit](https://pre-commit.com/#install) for installation.
After installing this on your local machine, the config in `.pre-commit-config.yaml` will be picked up and makes sure `lint` and `format` are run before commit to guarantee the code style.
### Lint and format on save (VSCode)
Add following config to your `settings.json` to enable lint and format on save.
```json
{
...,
"editor.formatOnSave": true,
"editor.codeActionsOnSave": {
"source.fixAll.eslint": true
},
"[vue]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[javascript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[typescript]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[jsonc]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[yaml]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
},
"[scss]": {
"editor.defaultFormatter": "esbenp.prettier-vscode"
}
}
```## Project Setup
```sh
yarn
```### Development with Storybook
```sh
yarn storybook
```### Build and watch for Development in implementing applications
```sh
yarn build:watch
```#### Yalc - for sharing locally developed packages across your local environment. - https://github.com/wclr/yalc
```sh
Yalc publish
```
Afterwards link the package in the desired implementing application.```sh
yalc add @OnroerendErfgoed/[email protected]
yalc update
yarn
```### Type-Check, Compile and Minify for Production
```sh
yarn build
```### Run Headed Component Tests with [Cypress Component Testing](https://on.cypress.io/component)
```sh
yarn test:unit:dev # or `yarn test:unit` for headless testing
```### Run End-to-End Tests with [Cypress](https://www.cypress.io/)
```sh
yarn test:e2e:dev
```This runs the end-to-end tests against the Vite development server.
It is much faster than the production build.But it's still recommended to test the production build with `test:e2e` before deploying (e.g. in CI environments):
```sh
yarn build
yarn test:e2e
```### Lint with [ESLint](https://eslint.org/)
```sh
yarn lint
```### Format with [Prettier](https://prettier.io/)
```sh
yarn format
```