@component-hook/create-app 1.0.2 → 1.0.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (31) hide show
  1. package/README.md +82 -82
  2. package/package.json +1 -1
  3. package/template-vue/.github/actions/setup-environment/action.yml +45 -45
  4. package/template-vue/.github/renovate.json +12 -12
  5. package/template-vue/.github/workflows/ci.yml +22 -22
  6. package/template-vue/.github/workflows/deploy.yml +27 -27
  7. package/template-vue/.github/workflows/preview.yml +17 -17
  8. package/template-vue/.gitlab/setup.yml +18 -18
  9. package/template-vue/.husky/commit-msg +3 -3
  10. package/template-vue/.husky/pre-commit +3 -3
  11. package/template-vue/.vscode/extensions.json +10 -10
  12. package/template-vue/.vscode/settings.json +27 -27
  13. package/template-vue/LICENSE +21 -21
  14. package/template-vue/README.md.art +100 -100
  15. package/template-vue/_gitignore +38 -38
  16. package/template-vue/_gitlab-ci.yml +22 -22
  17. package/template-vue/index.html.art +26 -26
  18. package/template-vue/package.json +73 -73
  19. package/template-vue/public/mockServiceWorker.js +307 -307
  20. package/template-vue/src/components.d.ts +14 -14
  21. package/template-vue/src/locales/en-US.json +3 -3
  22. package/template-vue/src/locales/zh-TW.json +3 -3
  23. package/template-vue/src/styles/common/all.postcss +1 -1
  24. package/template-vue/src/styles/common/button.postcss +12 -12
  25. package/template-vue/src/styles/index.postcss +1 -1
  26. package/template-vue/src/styles/tailwind.postcss +39 -39
  27. package/template-vue/src/vite-env.d.ts +12 -12
  28. package/template-vue/tsconfig.app.json +13 -13
  29. package/template-vue/tsconfig.json +14 -14
  30. package/template-vue/tsconfig.node.json +12 -12
  31. package/template-vue/tsconfig.vitest.json +8 -8
@@ -1,100 +1,100 @@
1
- # {{projectName}}
2
-
3
- ## Features
4
-
5
- - Vue 3
6
- - Pnpm 9
7
- - Vite 5
8
- - [Pinia](https://pinia.vuejs.org/) store
9
- - [pinia-plugin-persistedstate](https://www.npmjs.com/package/pinia-plugin-persistedstate)
10
- - Routing using [vue-router 4](https://router.vuejs.org/)
11
- - TypeScript 5
12
- - Axios
13
- - Tailwind CSS 3
14
- - Vue-i18n 9
15
- - PostCSS 8 w/ `postcss-nesting` plugin
16
- - [Cssnano](https://cssnano.github.io/cssnano/) for minimizing production CSS
17
- - [Postcss-pxtorem](https://www.npmjs.com/package/postcss-pxtorem) generates rem units from pixel units
18
- - [Vite-plugin-svg-icons](https://github.com/vbenjs/vite-plugin-svg-icons) generate svg sprite map
19
- - [Unplugin-vue-components](https://www.npmjs.com/package/unplugin-vue-components) auto importing for common components
20
- - Eslint
21
- - [@component-hook/eslint-plugin](https://www.npmjs.com/package/@component-hook/eslint-plugin?activeTab=readme)
22
- - Prettier
23
- - [Husky](https://www.npmjs.com/package/husky) to improves commits
24
- - if encounter npx: command not found, can execute `ln -s $(which npx) /usr/local/bin/npx` in zsh
25
- - [commitlint](https://commitlint.js.org/#/) checks if your commit messages meet the conventional commit format
26
- - [lint-staged](https://github.com/okonet/lint-staged) filter files checked by pre commit lint
27
- - Alias `@` to `<project_root>/src`
28
- - Mock use [msw](https://mswjs.io/)
29
- - `npx msw init ./public`
30
- - Unit test use [Vitest](https://vitest.dev/) + [Testing Library](https://testing-library.com/)
31
- - [jsdom](https://www.npmjs.com/package/jsdom)
32
- - [@vitest/coverage-v8](https://vitest.dev/guide/coverage.html)
33
- - [@testing-library/jest-dom](https://testing-library.com/docs/ecosystem-jest-dom/)
34
- - [@testing-library/vue](https://testing-library.com/docs/vue-testing-library/intro/)
35
- - [@testing-library/user-event](https://testing-library.com/docs/ecosystem-user-event/)
36
- - E2E test use [playwright](https://playwright.dev/)
37
- - [Rollup-plugin-visualizer](https://github.com/btd/rollup-plugin-visualizer) visualize and analyze your Rollup bundle to see which modules are taking up space
38
- - Predefined and fully typed global variables:
39
- - `VITE_APP_VERSION` is read from `package.json` version at build time
40
- - `VITE_APP_BUILD_EPOCH` is populated as `new Date().getTime()` at build time
41
- - Github workflows
42
- - ci - on workflow call and dispatch
43
- - deploy - on push main branch
44
- - preview - on pull request
45
- - Gitlab CI
46
- - run tests - on branches, merge request and manual
47
-
48
- ## Project Files
49
-
50
- ```text
51
- src/
52
- ├── __tests__/
53
- │ ├── __mocks__/
54
- │ ├── setup/
55
- │ │ └── unitTest.ts
56
- │ ├── e2e/*
57
- │ └── unit/*
58
- ├── apis/*
59
- ├── assets/*
60
- │ └── images/
61
- │ └── svgIcons
62
- │ └── vue.svg
63
- ├── components/
64
- │ ├── common/
65
- │ │ └── SvgIcon.vue
66
- │ └── indexPage/
67
- │ └── HelloWorld.vue
68
- ├── configs/*
69
- ├── hooks/*
70
- ├── locales/
71
- │ ├── en-US.json
72
- │ └── zh-CN.json
73
- ├── mocks/
74
- │ ├── handlers/*
75
- │ │ ├── apis/*
76
- │ │ └── index.ts
77
- │ │── browser.ts
78
- │ └── server.ts
79
- ├── pages/
80
- │ └── IndexPage.vue
81
- ├── plugins/
82
- │ └── i18n.ts
83
- ├── router/
84
- │ └── index.ts
85
- ├── stores/
86
- │ ├── modules
87
- │ │ └── config.ts
88
- │ └── index.ts
89
- ├── styles/
90
- │ ├── common/
91
- | │ ├── all.postcss
92
- | │ └── button.postcss
93
- │ ├── index.postcss
94
- │ └── tailwind.postcss
95
- ├── types/*
96
- ├── utils/*
97
- ├── App.vue
98
- ├── vite-env.d.ts
99
- └── main.ts
100
- ```
1
+ # {{projectName}}
2
+
3
+ ## Features
4
+
5
+ - Vue 3
6
+ - Pnpm 9
7
+ - Vite 5
8
+ - [Pinia](https://pinia.vuejs.org/) store
9
+ - [pinia-plugin-persistedstate](https://www.npmjs.com/package/pinia-plugin-persistedstate)
10
+ - Routing using [vue-router 4](https://router.vuejs.org/)
11
+ - TypeScript 5
12
+ - Axios
13
+ - Tailwind CSS 3
14
+ - Vue-i18n 9
15
+ - PostCSS 8 w/ `postcss-nesting` plugin
16
+ - [Cssnano](https://cssnano.github.io/cssnano/) for minimizing production CSS
17
+ - [Postcss-pxtorem](https://www.npmjs.com/package/postcss-pxtorem) generates rem units from pixel units
18
+ - [Vite-plugin-svg-icons](https://github.com/vbenjs/vite-plugin-svg-icons) generate svg sprite map
19
+ - [Unplugin-vue-components](https://www.npmjs.com/package/unplugin-vue-components) auto importing for common components
20
+ - Eslint
21
+ - [@component-hook/eslint-plugin](https://www.npmjs.com/package/@component-hook/eslint-plugin?activeTab=readme)
22
+ - Prettier
23
+ - [Husky](https://www.npmjs.com/package/husky) to improves commits
24
+ - if encounter npx: command not found, can execute `ln -s $(which npx) /usr/local/bin/npx` in zsh
25
+ - [commitlint](https://commitlint.js.org/#/) checks if your commit messages meet the conventional commit format
26
+ - [lint-staged](https://github.com/okonet/lint-staged) filter files checked by pre commit lint
27
+ - Alias `@` to `<project_root>/src`
28
+ - Mock use [msw](https://mswjs.io/)
29
+ - `npx msw init ./public`
30
+ - Unit test use [Vitest](https://vitest.dev/) + [Testing Library](https://testing-library.com/)
31
+ - [jsdom](https://www.npmjs.com/package/jsdom)
32
+ - [@vitest/coverage-v8](https://vitest.dev/guide/coverage.html)
33
+ - [@testing-library/jest-dom](https://testing-library.com/docs/ecosystem-jest-dom/)
34
+ - [@testing-library/vue](https://testing-library.com/docs/vue-testing-library/intro/)
35
+ - [@testing-library/user-event](https://testing-library.com/docs/ecosystem-user-event/)
36
+ - E2E test use [playwright](https://playwright.dev/)
37
+ - [Rollup-plugin-visualizer](https://github.com/btd/rollup-plugin-visualizer) visualize and analyze your Rollup bundle to see which modules are taking up space
38
+ - Predefined and fully typed global variables:
39
+ - `VITE_APP_VERSION` is read from `package.json` version at build time
40
+ - `VITE_APP_BUILD_EPOCH` is populated as `new Date().getTime()` at build time
41
+ - Github workflows
42
+ - ci - on workflow call and dispatch
43
+ - deploy - on push main branch
44
+ - preview - on pull request
45
+ - Gitlab CI
46
+ - run tests - on branches, merge request and manual
47
+
48
+ ## Project Files
49
+
50
+ ```text
51
+ src/
52
+ ├── __tests__/
53
+ │ ├── __mocks__/
54
+ │ ├── setup/
55
+ │ │ └── unitTest.ts
56
+ │ ├── e2e/*
57
+ │ └── unit/*
58
+ ├── apis/*
59
+ ├── assets/*
60
+ │ └── images/
61
+ │ └── svgIcons
62
+ │ └── vue.svg
63
+ ├── components/
64
+ │ ├── common/
65
+ │ │ └── SvgIcon.vue
66
+ │ └── indexPage/
67
+ │ └── HelloWorld.vue
68
+ ├── configs/*
69
+ ├── hooks/*
70
+ ├── locales/
71
+ │ ├── en-US.json
72
+ │ └── zh-CN.json
73
+ ├── mocks/
74
+ │ ├── handlers/*
75
+ │ │ ├── apis/*
76
+ │ │ └── index.ts
77
+ │ │── browser.ts
78
+ │ └── server.ts
79
+ ├── pages/
80
+ │ └── IndexPage.vue
81
+ ├── plugins/
82
+ │ └── i18n.ts
83
+ ├── router/
84
+ │ └── index.ts
85
+ ├── stores/
86
+ │ ├── modules
87
+ │ │ └── config.ts
88
+ │ └── index.ts
89
+ ├── styles/
90
+ │ ├── common/
91
+ | │ ├── all.postcss
92
+ | │ └── button.postcss
93
+ │ ├── index.postcss
94
+ │ └── tailwind.postcss
95
+ ├── types/*
96
+ ├── utils/*
97
+ ├── App.vue
98
+ ├── vite-env.d.ts
99
+ └── main.ts
100
+ ```
@@ -1,38 +1,38 @@
1
- # Logs
2
- logs
3
- *.log
4
- npm-debug.log*
5
- yarn-debug.log*
6
- yarn-error.log*
7
- pnpm-debug.log*
8
- lerna-debug.log*
9
-
10
- node_modules
11
- dist
12
- dist-ssr
13
- *.local
14
- .env
15
-
16
- # Editor directories and files
17
- .vscode/*
18
- !.vscode/extensions.json
19
- !.vscode/settings.json
20
- .idea
21
- .DS_Store
22
- *.suo
23
- *.ntvs*
24
- *.njsproj
25
- *.sln
26
- *.sw?
27
-
28
- # Component auto import
29
- /src/components.d.ts
30
-
31
- # Test reports
32
- coverage
33
- /test-results/
34
- /playwright-report/
35
- /playwright/.cache/
36
-
37
- # Visualizer
38
- stats.html
1
+ # Logs
2
+ logs
3
+ *.log
4
+ npm-debug.log*
5
+ yarn-debug.log*
6
+ yarn-error.log*
7
+ pnpm-debug.log*
8
+ lerna-debug.log*
9
+
10
+ node_modules
11
+ dist
12
+ dist-ssr
13
+ *.local
14
+ .env
15
+
16
+ # Editor directories and files
17
+ .vscode/*
18
+ !.vscode/extensions.json
19
+ !.vscode/settings.json
20
+ .idea
21
+ .DS_Store
22
+ *.suo
23
+ *.ntvs*
24
+ *.njsproj
25
+ *.sln
26
+ *.sw?
27
+
28
+ # Component auto import
29
+ /src/components.d.ts
30
+
31
+ # Test reports
32
+ coverage
33
+ /test-results/
34
+ /playwright-report/
35
+ /playwright/.cache/
36
+
37
+ # Visualizer
38
+ stats.html
@@ -1,22 +1,22 @@
1
- stages:
2
- - test
3
- # - deploy
4
-
5
- include:
6
- - local: '.gitlab/setup.yml'
7
-
8
- run_test:
9
- stage: test
10
- image: mcr.microsoft.com/playwright:focal
11
- script:
12
- - npx playwright install --with-deps
13
- - pnpm test:unit
14
- - pnpm test:ci-e2e
15
- rules:
16
- - if: $CI_COMMIT_BRANCH
17
- changes:
18
- - 'src/**'
19
- - 'pnpm-lock.yaml'
20
- - 'package.json'
21
- - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
22
- - when: manual
1
+ stages:
2
+ - test
3
+ # - deploy
4
+
5
+ include:
6
+ - local: '.gitlab/setup.yml'
7
+
8
+ run_test:
9
+ stage: test
10
+ image: mcr.microsoft.com/playwright:focal
11
+ script:
12
+ - npx playwright install --with-deps
13
+ - pnpm test:unit
14
+ - pnpm test:ci-e2e
15
+ rules:
16
+ - if: $CI_COMMIT_BRANCH
17
+ changes:
18
+ - 'src/**'
19
+ - 'pnpm-lock.yaml'
20
+ - 'package.json'
21
+ - if: '$CI_PIPELINE_SOURCE == "merge_request_event"'
22
+ - when: manual
@@ -1,26 +1,26 @@
1
- <!DOCTYPE html>
2
- <html lang="en">
3
- <head>
4
- <meta charset="UTF-8" />
5
- <link
6
- rel="icon"
7
- type="image/svg+xml"
8
- href="/vite.svg"
9
- />
10
- <meta
11
- name="viewport"
12
- content="width=device-width, initial-scale=1.0"
13
- />
14
- <title>{{projectName}}</title>
15
- </head>
16
- <body>
17
- <div id="app"></div>
18
- <script
19
- type="module"
20
- src="/src/main.ts"
21
- ></script>
22
- <noscript>
23
- <p>This site requires JavaScript to work.</p>
24
- </noscript>
25
- </body>
26
- </html>
1
+ <!DOCTYPE html>
2
+ <html lang="en">
3
+ <head>
4
+ <meta charset="UTF-8" />
5
+ <link
6
+ rel="icon"
7
+ type="image/svg+xml"
8
+ href="/vite.svg"
9
+ />
10
+ <meta
11
+ name="viewport"
12
+ content="width=device-width, initial-scale=1.0"
13
+ />
14
+ <title>{{projectName}}</title>
15
+ </head>
16
+ <body>
17
+ <div id="app"></div>
18
+ <script
19
+ type="module"
20
+ src="/src/main.ts"
21
+ ></script>
22
+ <noscript>
23
+ <p>This site requires JavaScript to work.</p>
24
+ </noscript>
25
+ </body>
26
+ </html>
@@ -1,73 +1,73 @@
1
- {
2
- "name": "vue-starter",
3
- "version": "0.0.0",
4
- "license": "MIT",
5
- "type": "module",
6
- "packageManager": "pnpm@10.6.3",
7
- "scripts": {
8
- "dev": "vite",
9
- "dev:mock": "MOCK=true vite",
10
- "build": "pnpm typecheck && vite build",
11
- "lint": "eslint --fix .",
12
- "test:unit": "vitest --coverage",
13
- "test:e2e": "playwright test --headed",
14
- "test:ui-e2e": "playwright test --ui",
15
- "test:ci-e2e": "playwright test",
16
- "typecheck": "vue-tsc --noEmit",
17
- "prepare": "husky",
18
- "preview": "vite preview"
19
- },
20
- "dependencies": {
21
- "axios": "^1.8.3",
22
- "pinia": "^3.0.1",
23
- "pinia-plugin-persistedstate": "^4.2.0",
24
- "vue": "^3.5.13",
25
- "vue-i18n": "^11.1.2",
26
- "vue-router": "^4.5.0"
27
- },
28
- "devDependencies": {
29
- "@component-hook/eslint-plugin": "1.0.1",
30
- "@intlify/unplugin-vue-i18n": "^6.0.3",
31
- "@playwright/test": "^1.51.0",
32
- "@testing-library/jest-dom": "^6.6.3",
33
- "@testing-library/user-event": "^14.6.1",
34
- "@testing-library/vue": "^8.1.0",
35
- "@tsconfig/node22": "22.0.0",
36
- "@types/node": "^22.13.10",
37
- "@vitejs/plugin-vue": "^5.2.2",
38
- "@vitest/coverage-v8": "^2.1.9",
39
- "@vue/tsconfig": "^0.7.0",
40
- "autoprefixer": "^10.4.21",
41
- "cssnano": "^7.0.6",
42
- "eslint": "^9.22.0",
43
- "jsdom": "^26.0.0",
44
- "msw": "^2.7.3",
45
- "postcss": "^8.5.3",
46
- "postcss-import": "^16.1.0",
47
- "postcss-nesting": "^13.0.1",
48
- "postcss-pxtorem": "^6.1.0",
49
- "prettier": "^3.5.3",
50
- "rollup-plugin-visualizer": "^5.14.0",
51
- "tailwindcss": "^3.4.17",
52
- "typescript": "^5.8.2",
53
- "unplugin-vue-components": "^0.28.0",
54
- "vite": "^5.4.14",
55
- "vite-plugin-svg-icons": "^2.0.1",
56
- "vitest": "^2.1.9",
57
- "vue-tsc": "^2.2.8"
58
- },
59
- "browserslist": [
60
- "> 1%",
61
- "last 2 versions",
62
- "not dead"
63
- ],
64
- "msw": {
65
- "workerDirectory": "public"
66
- },
67
- "optionalDependencies": {
68
- "@commitlint/cli": "^19.8.0",
69
- "@commitlint/config-conventional": "^19.8.0",
70
- "husky": "^9.1.7",
71
- "lint-staged": "^15.5.0"
72
- }
73
- }
1
+ {
2
+ "name": "vue-starter",
3
+ "version": "0.0.0",
4
+ "license": "MIT",
5
+ "type": "module",
6
+ "packageManager": "pnpm@10.6.3",
7
+ "scripts": {
8
+ "dev": "vite",
9
+ "dev:mock": "MOCK=true vite",
10
+ "build": "pnpm typecheck && vite build",
11
+ "lint": "eslint --fix .",
12
+ "test:unit": "vitest --coverage",
13
+ "test:e2e": "playwright test --headed",
14
+ "test:ui-e2e": "playwright test --ui",
15
+ "test:ci-e2e": "playwright test",
16
+ "typecheck": "vue-tsc --noEmit",
17
+ "prepare": "husky",
18
+ "preview": "vite preview"
19
+ },
20
+ "dependencies": {
21
+ "axios": "^1.8.3",
22
+ "pinia": "^3.0.1",
23
+ "pinia-plugin-persistedstate": "^4.2.0",
24
+ "vue": "^3.5.13",
25
+ "vue-i18n": "^11.1.2",
26
+ "vue-router": "^4.5.0"
27
+ },
28
+ "devDependencies": {
29
+ "@component-hook/eslint-plugin": "1.0.1",
30
+ "@intlify/unplugin-vue-i18n": "^6.0.3",
31
+ "@playwright/test": "^1.51.0",
32
+ "@testing-library/jest-dom": "^6.6.3",
33
+ "@testing-library/user-event": "^14.6.1",
34
+ "@testing-library/vue": "^8.1.0",
35
+ "@tsconfig/node22": "22.0.0",
36
+ "@types/node": "^22.13.10",
37
+ "@vitejs/plugin-vue": "^5.2.2",
38
+ "@vitest/coverage-v8": "^2.1.9",
39
+ "@vue/tsconfig": "^0.7.0",
40
+ "autoprefixer": "^10.4.21",
41
+ "cssnano": "^7.0.6",
42
+ "eslint": "^9.22.0",
43
+ "jsdom": "^26.0.0",
44
+ "msw": "^2.7.3",
45
+ "postcss": "^8.5.3",
46
+ "postcss-import": "^16.1.0",
47
+ "postcss-nesting": "^13.0.1",
48
+ "postcss-pxtorem": "^6.1.0",
49
+ "prettier": "^3.5.3",
50
+ "rollup-plugin-visualizer": "^5.14.0",
51
+ "tailwindcss": "^3.4.17",
52
+ "typescript": "^5.8.2",
53
+ "unplugin-vue-components": "^0.28.0",
54
+ "vite": "^5.4.14",
55
+ "vite-plugin-svg-icons": "^2.0.1",
56
+ "vitest": "^2.1.9",
57
+ "vue-tsc": "^2.2.8"
58
+ },
59
+ "browserslist": [
60
+ "> 1%",
61
+ "last 2 versions",
62
+ "not dead"
63
+ ],
64
+ "msw": {
65
+ "workerDirectory": "public"
66
+ },
67
+ "optionalDependencies": {
68
+ "@commitlint/cli": "^19.8.0",
69
+ "@commitlint/config-conventional": "^19.8.0",
70
+ "husky": "^9.1.7",
71
+ "lint-staged": "^15.5.0"
72
+ }
73
+ }