|
1 | 1 | [4bit](https://ciembor.github.io/4bit) Terminal Color Scheme Designer |
2 | 2 | ========= |
3 | 3 |
|
4 | | -[](https://github.com/ciembor/4bit/actions/workflows/pages.yml) |
5 | 4 | [](https://ciembor.github.io/4bit/) |
6 | 5 | [](LICENSE.md) |
| 6 | +[](https://github.com/ciembor/4bit/actions/workflows/pages.yml) |
| 7 | +[](#coverage) |
7 | 8 | [](https://github.com/ciembor/4bit/pulls) |
8 | 9 |
|
9 | 10 | [](https://ciembor.github.io/4bit) |
@@ -63,17 +64,27 @@ Useful commands: |
63 | 64 | 3. Build production assets with `npm run build` |
64 | 65 | 4. Preview the production build with `npm run preview` |
65 | 66 | 5. Run the test suite with `npm test` |
66 | | -6. Run lint fixes with `npm run lint` |
| 67 | +6. Measure unit-test coverage with `npm run test:coverage` |
| 68 | +7. Refresh the README coverage badge with `npm run coverage:badge` |
| 69 | +8. Run lint fixes with `npm run lint` |
67 | 70 |
|
68 | 71 | Project structure: |
69 | 72 |
|
70 | | -* `src/components` - UI components |
71 | | -* `src/stores` - Pinia stores for editable scheme state and calculated colors |
72 | | -* `src/services` - color calculation and export logic |
73 | | -* `src/lib/jquery.ui.colorPicker.js` - wrapped legacy color picker plugin |
74 | | -* `src/assets/styles` - global base styles and imported third-party CSS |
| 73 | +* `src/domain` - pure scheme rules, defaults, color naming, and color-mode logic |
| 74 | +* `src/application` - synchronization/use-case layer that applies domain logic to app state |
| 75 | +* `src/infrastructure` - URL/query codecs, export serializers, browser sync, and wrapped legacy vendor code |
| 76 | +* `src/presentation` - Vue components, Pinia stores, fonts, and styles |
75 | 77 | * `public` - static assets copied to the final build, including images and SEO files |
76 | 78 |
|
| 79 | +Coverage |
| 80 | +--------- |
| 81 | + |
| 82 | +`npm run test:coverage` writes HTML, LCOV, and JSON summary reports to `coverage/`. |
| 83 | + |
| 84 | +The coverage badge above is generated from the line coverage in `coverage/coverage-summary.json` by `npm run coverage:badge`. |
| 85 | + |
| 86 | +Coverage is measured for `src/**/*.js`, excluding `src/main.js` and the vendored jQuery color picker wrapper in `src/infrastructure/vendor`. |
| 87 | + |
77 | 88 | Author |
78 | 89 | --------- |
79 | 90 |
|
|
0 commit comments