create-koppajs 1.2.2 → 1.2.3
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.
- package/CHANGELOG.md +37 -0
- package/README.md +12 -10
- package/bin/create-koppajs.js +0 -14
- package/package.json +4 -4
- package/template/README.md +19 -206
- package/template/_gitignore +0 -3
- package/template/index.html +1 -1
- package/template/package.json +9 -46
- package/template/public/favicon.png +0 -0
- package/template/public/koppajs-logo.png +0 -0
- package/template/src/app-view.kpa +1 -3
- package/template/tsconfig.json +2 -9
- package/template-overlays/router/README.md +25 -200
- package/template-overlays/router/index.html +1 -1
- package/template-overlays/router/package.json +10 -47
- package/template-overlays/router/src/app-view.kpa +21 -78
- package/template-overlays/router/src/home-page.kpa +23 -60
- package/template-overlays/router/src/main.ts +0 -9
- package/template-overlays/router/src/not-found-page.kpa +16 -48
- package/template-overlays/router/src/router-page.kpa +34 -69
- package/template-overlays/router/src/style.css +5 -29
- package/template/AI_CONSTITUTION.md +0 -50
- package/template/ARCHITECTURE.md +0 -84
- package/template/CHANGELOG.md +0 -35
- package/template/CONTRIBUTING.md +0 -89
- package/template/DECISION_HIERARCHY.md +0 -32
- package/template/DEVELOPMENT_RULES.md +0 -57
- package/template/LICENSE +0 -201
- package/template/RELEASE.md +0 -227
- package/template/ROADMAP.md +0 -34
- package/template/TESTING_STRATEGY.md +0 -96
- package/template/_editorconfig +0 -12
- package/template/_github/instructions/ai-workflow.md +0 -33
- package/template/_github/workflows/ci.yml +0 -41
- package/template/_github/workflows/release.yml +0 -58
- package/template/_husky/commit-msg +0 -8
- package/template/_husky/pre-commit +0 -1
- package/template/_prettierignore +0 -7
- package/template/commitlint.config.mjs +0 -6
- package/template/docs/adr/0001-keep-the-starter-minimal.md +0 -32
- package/template/docs/adr/0002-adopt-a-living-meta-layer.md +0 -30
- package/template/docs/adr/0003-rely-on-upstream-kpa-es-module-output.md +0 -32
- package/template/docs/adr/0004-adopt-an-automated-quality-baseline.md +0 -31
- package/template/docs/adr/0005-adopt-a-tag-driven-release-baseline.md +0 -45
- package/template/docs/adr/0006-adopt-commit-message-conventions.md +0 -39
- package/template/docs/adr/README.md +0 -37
- package/template/docs/adr/TEMPLATE.md +0 -18
- package/template/docs/architecture/module-boundaries.md +0 -47
- package/template/docs/meta/maintenance.md +0 -40
- package/template/docs/quality/quality-gates.md +0 -39
- package/template/docs/specs/README.md +0 -36
- package/template/docs/specs/TEMPLATE.md +0 -34
- package/template/docs/specs/app-bootstrap.md +0 -46
- package/template/docs/specs/counter-component.md +0 -48
- package/template/docs/specs/quality-workflow.md +0 -62
- package/template/eslint.config.mjs +0 -54
- package/template/playwright.config.ts +0 -31
- package/template/pnpm-lock.yaml +0 -3777
- package/template/prettier.config.mjs +0 -6
- package/template/public/favicon.svg +0 -15
- package/template/tests/e2e/app.spec.ts +0 -18
- package/template/tests/integration/main-bootstrap.test.ts +0 -33
- package/template/vite.config.d.mts +0 -5
- package/template/vitest.config.mjs +0 -19
- package/template-overlays/router/ARCHITECTURE.md +0 -86
- package/template-overlays/router/CHANGELOG.md +0 -50
- package/template-overlays/router/DEVELOPMENT_RULES.md +0 -57
- package/template-overlays/router/ROADMAP.md +0 -34
- package/template-overlays/router/TESTING_STRATEGY.md +0 -67
- package/template-overlays/router/docs/adr/0001-keep-the-starter-minimal.md +0 -32
- package/template-overlays/router/docs/architecture/module-boundaries.md +0 -39
- package/template-overlays/router/docs/meta/maintenance.md +0 -38
- package/template-overlays/router/docs/specs/README.md +0 -19
- package/template-overlays/router/docs/specs/app-bootstrap.md +0 -42
- package/template-overlays/router/docs/specs/router-navigation.md +0 -41
- package/template-overlays/router/pnpm-lock.yaml +0 -3786
- package/template-overlays/router/tests/e2e/app.spec.ts +0 -38
- package/template-overlays/router/tests/integration/main-bootstrap.test.ts +0 -150
package/CHANGELOG.md
CHANGED
|
@@ -16,6 +16,43 @@ _No unreleased changes yet._
|
|
|
16
16
|
|
|
17
17
|
---
|
|
18
18
|
|
|
19
|
+
## [1.2.3] — Lean Starter Maintenance
|
|
20
|
+
|
|
21
|
+
**2026-04-24**
|
|
22
|
+
|
|
23
|
+
Patch release to keep generated projects focused on runnable KoppaJS app code.
|
|
24
|
+
This is a maintainer-approved patch exception to the versioning policy because
|
|
25
|
+
the CLI invocation contract stays unchanged while the generated starter tree is
|
|
26
|
+
intentionally reduced.
|
|
27
|
+
|
|
28
|
+
### Changed
|
|
29
|
+
|
|
30
|
+
- trimmed generated starters to app source, README, and Vite/TypeScript build
|
|
31
|
+
files
|
|
32
|
+
- switched generated starter views from the remote KoppaJS logo URL to a local
|
|
33
|
+
`public/koppajs-logo.png` asset
|
|
34
|
+
- switched generated starter favicon output from `public/favicon.svg` to
|
|
35
|
+
`public/favicon.png`
|
|
36
|
+
- stopped patching generated `CHANGELOG.md` and `RELEASE.md`; those files are
|
|
37
|
+
no longer included in new apps
|
|
38
|
+
- refreshed the compatible generated-starter toolchain to `vite@7.3.2` and
|
|
39
|
+
`@types/node@25.6.0` while keeping `typescript@5.9.3` within the current
|
|
40
|
+
`@koppajs/koppajs-vite-plugin` peer range
|
|
41
|
+
- raised repository and generated-starter pnpm metadata to `pnpm@10.33.2`,
|
|
42
|
+
with a declared minimum of `>=10.24.0`
|
|
43
|
+
- raised repository and generated-starter Node.js metadata to `>=22.12.0`
|
|
44
|
+
|
|
45
|
+
### Removed
|
|
46
|
+
|
|
47
|
+
- removed governance, ADR/spec docs, GitHub workflows, Husky hooks, commitlint,
|
|
48
|
+
lint-staged, release files, changelog files, license files, and starter
|
|
49
|
+
lockfiles from generated projects
|
|
50
|
+
- removed generated-starter lint, format, and test tooling, including ESLint,
|
|
51
|
+
Prettier, Vitest, Playwright, their configs, scripts, dependencies, and test
|
|
52
|
+
files
|
|
53
|
+
|
|
54
|
+
---
|
|
55
|
+
|
|
19
56
|
## [1.2.2] — Node & Validation Baseline Alignment
|
|
20
57
|
|
|
21
58
|
**2026-03-27**
|
package/README.md
CHANGED
|
@@ -18,7 +18,7 @@
|
|
|
18
18
|
<h1 align="center">create-koppajs</h1>
|
|
19
19
|
<h3 align="center">Official project scaffolder for KoppaJS</h3>
|
|
20
20
|
<p align="center">
|
|
21
|
-
<i>Generate a ready-to-run KoppaJS starter
|
|
21
|
+
<i>Generate a ready-to-run KoppaJS starter in one command.</i>
|
|
22
22
|
</p>
|
|
23
23
|
</div>
|
|
24
24
|
|
|
@@ -118,9 +118,8 @@ The stable public contract of this repository is:
|
|
|
118
118
|
target directories
|
|
119
119
|
- recursive copying of the bundled `template/` directory plus any selected
|
|
120
120
|
overlay
|
|
121
|
-
- restoration of publish-safe dotfiles
|
|
122
|
-
- patching of generated `package.json
|
|
123
|
-
`RELEASE.md`
|
|
121
|
+
- restoration of publish-safe dotfiles during copy
|
|
122
|
+
- patching of generated `package.json` and `README.md`
|
|
124
123
|
- the generated starter baselines defined by `template/` and
|
|
125
124
|
`template-overlays/`
|
|
126
125
|
- the npm package payload: `bin/`, `template/`, `template-overlays/`,
|
|
@@ -173,8 +172,8 @@ pnpm dev
|
|
|
173
172
|
|
|
174
173
|
## Requirements
|
|
175
174
|
|
|
176
|
-
- for `create-koppajs`: Node.js `>=22`
|
|
177
|
-
- for generated starter projects: Node.js `>=22` and pnpm `>=10`
|
|
175
|
+
- for `create-koppajs`: Node.js `>=22.12.0` and pnpm `>=10.24.0`
|
|
176
|
+
- for generated starter projects: Node.js `>=22.12.0` and pnpm `>=10.24.0`
|
|
178
177
|
|
|
179
178
|
---
|
|
180
179
|
|
|
@@ -189,10 +188,13 @@ The generated project includes one of two supported starters:
|
|
|
189
188
|
|
|
190
189
|
Every starter also includes:
|
|
191
190
|
|
|
192
|
-
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
191
|
+
- a focused README with setup, scripts, and project structure
|
|
192
|
+
|
|
193
|
+
The generated project intentionally excludes repository governance files,
|
|
194
|
+
release automation, GitHub workflows, Git hooks, changelog files, lockfiles,
|
|
195
|
+
and lint/format/test tooling. Those files belong to this scaffolder repository
|
|
196
|
+
or to project-specific app decisions, not to every new application created from
|
|
197
|
+
it.
|
|
196
198
|
|
|
197
199
|
The root repository treats those starters as versioned product surface, not
|
|
198
200
|
test data. `template/` plus the supported overlays are the only source of truth
|
package/bin/create-koppajs.js
CHANGED
|
@@ -206,13 +206,9 @@ export function ensureTargetDir(targetPath) {
|
|
|
206
206
|
// npm excludes .gitignore from published packages — ship as _gitignore
|
|
207
207
|
// and rename during scaffolding (same approach as create-vite).
|
|
208
208
|
const RENAME_FILES = {
|
|
209
|
-
_editorconfig: ".editorconfig",
|
|
210
209
|
_gitattributes: ".gitattributes",
|
|
211
|
-
_github: ".github",
|
|
212
210
|
_gitignore: ".gitignore",
|
|
213
|
-
_husky: ".husky",
|
|
214
211
|
_npmrc: ".npmrc",
|
|
215
|
-
_prettierignore: ".prettierignore",
|
|
216
212
|
};
|
|
217
213
|
|
|
218
214
|
export function copyDirRecursive(src, dest) {
|
|
@@ -261,14 +257,6 @@ export function patchReadme(destDir, projectName) {
|
|
|
261
257
|
patchTextFile(destDir, "README.md", projectName);
|
|
262
258
|
}
|
|
263
259
|
|
|
264
|
-
export function patchChangelog(destDir, projectName) {
|
|
265
|
-
patchTextFile(destDir, "CHANGELOG.md", projectName);
|
|
266
|
-
}
|
|
267
|
-
|
|
268
|
-
export function patchReleaseNotes(destDir, projectName) {
|
|
269
|
-
patchTextFile(destDir, "RELEASE.md", projectName);
|
|
270
|
-
}
|
|
271
|
-
|
|
272
260
|
// ── Final output ────────────────────────────────────────────────────
|
|
273
261
|
|
|
274
262
|
export function printNextSteps(projectName) {
|
|
@@ -327,8 +315,6 @@ export async function runCli(
|
|
|
327
315
|
copyStarterTemplate(templateName, targetDir);
|
|
328
316
|
patchPackageJson(targetDir, projectName);
|
|
329
317
|
patchReadme(targetDir, projectName);
|
|
330
|
-
patchChangelog(targetDir, projectName);
|
|
331
|
-
patchReleaseNotes(targetDir, projectName);
|
|
332
318
|
printNextSteps(projectName);
|
|
333
319
|
|
|
334
320
|
return 0;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-koppajs",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.3",
|
|
4
4
|
"private": false,
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "Scaffold a new KoppaJS project in seconds.",
|
|
@@ -15,10 +15,10 @@
|
|
|
15
15
|
"README.md",
|
|
16
16
|
"LICENSE"
|
|
17
17
|
],
|
|
18
|
-
"packageManager": "pnpm@10.
|
|
18
|
+
"packageManager": "pnpm@10.33.2",
|
|
19
19
|
"engines": {
|
|
20
|
-
"node": ">=22",
|
|
21
|
-
"pnpm": ">=10"
|
|
20
|
+
"node": ">=22.12.0",
|
|
21
|
+
"pnpm": ">=10.24.0"
|
|
22
22
|
},
|
|
23
23
|
"scripts": {
|
|
24
24
|
"check:meta": "node scripts/check-meta-layer.mjs",
|
package/template/README.md
CHANGED
|
@@ -1,90 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
# __PROJECT_NAME__
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
<img src="https://public-assets-1b57ca06-687a-4142-a525-0635f7649a5c.s3.eu-central-1.amazonaws.com/koppajs/koppajs-logo-text-900x226.png" width="500" alt="KoppaJS Logo">
|
|
5
|
-
</div>
|
|
6
|
-
|
|
7
|
-
<br>
|
|
8
|
-
|
|
9
|
-
<div align="center">
|
|
10
|
-
<a href="./LICENSE"><img src="https://img.shields.io/badge/license-Apache--2.0-blue?style=flat-square" alt="License"></a>
|
|
11
|
-
</div>
|
|
12
|
-
|
|
13
|
-
<br>
|
|
14
|
-
|
|
15
|
-
<div align="center">
|
|
16
|
-
<h1 align="center">__PROJECT_NAME__</h1>
|
|
17
|
-
<h3 align="center">KoppaJS starter project</h3>
|
|
18
|
-
<p align="center">
|
|
19
|
-
<i>Scaffolded from the current official KoppaJS starter baseline.</i>
|
|
20
|
-
</p>
|
|
21
|
-
</div>
|
|
22
|
-
|
|
23
|
-
<br>
|
|
24
|
-
|
|
25
|
-
<div align="center">
|
|
26
|
-
<p align="center">
|
|
27
|
-
<a href="https://github.com/koppajs/koppajs-documentation">Documentation</a>
|
|
28
|
-
·
|
|
29
|
-
<a href="https://github.com/koppajs/koppajs-core">KoppaJS Core</a>
|
|
30
|
-
·
|
|
31
|
-
<a href="https://github.com/koppajs/koppajs-vite-plugin">Vite Plugin</a>
|
|
32
|
-
</p>
|
|
33
|
-
</div>
|
|
34
|
-
|
|
35
|
-
<br>
|
|
36
|
-
|
|
37
|
-
<details>
|
|
38
|
-
<summary>Table of Contents</summary>
|
|
39
|
-
<ol>
|
|
40
|
-
<li><a href="#what-is-this">What is this?</a></li>
|
|
41
|
-
<li><a href="#requirements">Requirements</a></li>
|
|
42
|
-
<li><a href="#getting-started">Getting Started</a></li>
|
|
43
|
-
<li><a href="#quality-workflow">Quality Workflow</a></li>
|
|
44
|
-
<li><a href="#release-workflow">Release Workflow</a></li>
|
|
45
|
-
<li><a href="#project-structure">Project Structure</a></li>
|
|
46
|
-
<li><a href="#meta-layer">Meta Layer</a></li>
|
|
47
|
-
<li><a href="#community--contribution">Community & Contribution</a></li>
|
|
48
|
-
<li><a href="#license">License</a></li>
|
|
49
|
-
</ol>
|
|
50
|
-
</details>
|
|
51
|
-
|
|
52
|
-
---
|
|
53
|
-
|
|
54
|
-
## What is this?
|
|
55
|
-
|
|
56
|
-
This project was scaffolded from the current official minimal starter baseline
|
|
57
|
-
for KoppaJS.
|
|
58
|
-
|
|
59
|
-
It keeps the runtime intentionally small:
|
|
60
|
-
|
|
61
|
-
- one HTML shell
|
|
62
|
-
- one TypeScript bootstrap file
|
|
63
|
-
- one root view
|
|
64
|
-
- one stateful child component
|
|
65
|
-
|
|
66
|
-
It also carries a small quality baseline so the starter stays runnable and trustworthy:
|
|
67
|
-
|
|
68
|
-
- ESLint for source and tooling files
|
|
69
|
-
- Prettier plus `.editorconfig` for supported text formats
|
|
70
|
-
- Vitest for local unit and integration coverage
|
|
71
|
-
- Playwright for a real-browser smoke test
|
|
72
|
-
- Husky plus lint-staged for fast staged-file checks
|
|
73
|
-
- Conventional Commits enforcement via `commitlint`
|
|
74
|
-
- a tag-driven GitHub release baseline with `CHANGELOG.md` and `RELEASE.md`
|
|
75
|
-
|
|
76
|
-
Use it as a starting point for new KoppaJS projects or as a reference for how components are registered, composed, and validated.
|
|
77
|
-
|
|
78
|
-
> **Note:** This repository uses published npm packages, so it works as a standalone starter after `pnpm install`.
|
|
79
|
-
|
|
80
|
-
---
|
|
3
|
+
KoppaJS starter project scaffolded with `create-koppajs`.
|
|
81
4
|
|
|
82
5
|
## Requirements
|
|
83
6
|
|
|
84
|
-
- Node.js >= 22
|
|
85
|
-
- pnpm >= 10
|
|
86
|
-
|
|
87
|
-
---
|
|
7
|
+
- Node.js >= 22.12.0
|
|
8
|
+
- pnpm >= 10.24.0
|
|
88
9
|
|
|
89
10
|
## Getting Started
|
|
90
11
|
|
|
@@ -93,146 +14,38 @@ pnpm install
|
|
|
93
14
|
pnpm dev
|
|
94
15
|
```
|
|
95
16
|
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
```bash
|
|
99
|
-
pnpm exec playwright install chromium
|
|
100
|
-
```
|
|
101
|
-
|
|
102
|
-
Useful commands:
|
|
17
|
+
## Scripts
|
|
103
18
|
|
|
104
19
|
```bash
|
|
105
|
-
pnpm lint
|
|
106
|
-
pnpm format:check
|
|
107
|
-
pnpm typecheck
|
|
108
|
-
pnpm test:run
|
|
109
|
-
pnpm test:coverage
|
|
110
20
|
pnpm build
|
|
21
|
+
pnpm typecheck
|
|
111
22
|
pnpm serve
|
|
112
|
-
pnpm release:check
|
|
113
|
-
```
|
|
114
|
-
|
|
115
|
-
Commit messages follow Conventional Commits, for example:
|
|
116
|
-
|
|
117
|
-
```text
|
|
118
|
-
feat: add release workflow
|
|
119
|
-
docs: update starter governance
|
|
120
|
-
fix: align counter button labels
|
|
121
23
|
```
|
|
122
24
|
|
|
123
|
-
---
|
|
124
|
-
|
|
125
|
-
## Quality Workflow
|
|
126
|
-
|
|
127
|
-
Fast local baseline:
|
|
128
|
-
|
|
129
|
-
```bash
|
|
130
|
-
pnpm check
|
|
131
|
-
```
|
|
132
|
-
|
|
133
|
-
Full validation, including Playwright:
|
|
134
|
-
|
|
135
|
-
```bash
|
|
136
|
-
pnpm validate
|
|
137
|
-
```
|
|
138
|
-
|
|
139
|
-
Standalone browser smoke test:
|
|
140
|
-
|
|
141
|
-
```bash
|
|
142
|
-
pnpm test:e2e
|
|
143
|
-
```
|
|
144
|
-
|
|
145
|
-
---
|
|
146
|
-
|
|
147
|
-
## Release Workflow
|
|
148
|
-
|
|
149
|
-
Tagged releases are documented in `CHANGELOG.md`.
|
|
150
|
-
The maintainer procedure lives in `RELEASE.md`.
|
|
151
|
-
|
|
152
|
-
Release tags must use the form `vX.Y.Z` and match `package.json`.
|
|
153
|
-
The included automation creates GitHub Releases only. If your project later
|
|
154
|
-
needs npm publishing or deployment-specific release steps, update `RELEASE.md`
|
|
155
|
-
and `.github/workflows/release.yml` together.
|
|
156
|
-
|
|
157
|
-
---
|
|
158
|
-
|
|
159
25
|
## Project Structure
|
|
160
26
|
|
|
161
27
|
```text
|
|
162
28
|
__PROJECT_NAME__/
|
|
163
|
-
├── .
|
|
164
|
-
├── .github/
|
|
29
|
+
├── .gitattributes
|
|
165
30
|
├── .gitignore
|
|
166
|
-
├── .husky/
|
|
167
31
|
├── .npmrc
|
|
168
|
-
├── .
|
|
169
|
-
├── CHANGELOG.md
|
|
170
|
-
├── commitlint.config.mjs
|
|
171
|
-
├── AI_CONSTITUTION.md
|
|
172
|
-
├── ARCHITECTURE.md
|
|
173
|
-
├── CONTRIBUTING.md
|
|
174
|
-
├── DECISION_HIERARCHY.md
|
|
175
|
-
├── DEVELOPMENT_RULES.md
|
|
176
|
-
├── RELEASE.md
|
|
177
|
-
├── ROADMAP.md
|
|
178
|
-
├── TESTING_STRATEGY.md
|
|
179
|
-
├── eslint.config.mjs
|
|
32
|
+
├── README.md
|
|
180
33
|
├── index.html
|
|
181
34
|
├── package.json
|
|
182
|
-
├── playwright.config.ts
|
|
183
|
-
├── pnpm-lock.yaml
|
|
184
|
-
├── prettier.config.mjs
|
|
185
35
|
├── tsconfig.json
|
|
186
36
|
├── vite.config.mjs
|
|
187
|
-
├── vitest.config.mjs
|
|
188
|
-
├── docs/
|
|
189
|
-
│ ├── adr/
|
|
190
|
-
│ ├── architecture/
|
|
191
|
-
│ ├── meta/
|
|
192
|
-
│ ├── quality/
|
|
193
|
-
│ └── specs/
|
|
194
37
|
├── public/
|
|
195
|
-
│
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
└──
|
|
202
|
-
├── e2e/
|
|
203
|
-
├── integration/
|
|
204
|
-
└── unit/
|
|
38
|
+
│ ├── favicon.png
|
|
39
|
+
│ └── koppajs-logo.png
|
|
40
|
+
└── src/
|
|
41
|
+
├── app-view.kpa
|
|
42
|
+
├── counter-component.kpa
|
|
43
|
+
├── main.ts
|
|
44
|
+
└── style.css
|
|
205
45
|
```
|
|
206
46
|
|
|
207
|
-
|
|
208
|
-
|
|
209
|
-
## Meta Layer
|
|
210
|
-
|
|
211
|
-
The repository includes an explicit meta layer so architecture, testing, and contributor rules evolve together with the codebase.
|
|
212
|
-
|
|
213
|
-
Start here:
|
|
214
|
-
|
|
215
|
-
- `DECISION_HIERARCHY.md`
|
|
216
|
-
- `AI_CONSTITUTION.md`
|
|
217
|
-
- `ARCHITECTURE.md`
|
|
218
|
-
- `DEVELOPMENT_RULES.md`
|
|
219
|
-
- `TESTING_STRATEGY.md`
|
|
220
|
-
- `CHANGELOG.md`
|
|
221
|
-
- `RELEASE.md`
|
|
222
|
-
- `docs/quality/quality-gates.md`
|
|
223
|
-
- `docs/adr/`
|
|
224
|
-
- `docs/specs/`
|
|
225
|
-
|
|
226
|
-
---
|
|
227
|
-
|
|
228
|
-
## Community & Contribution
|
|
229
|
-
|
|
230
|
-
Contribution workflow details live in `CONTRIBUTING.md`.
|
|
231
|
-
Update this section with your own repository links once the project has a
|
|
232
|
-
canonical home.
|
|
233
|
-
|
|
234
|
-
---
|
|
235
|
-
|
|
236
|
-
## License
|
|
47
|
+
## Useful Links
|
|
237
48
|
|
|
238
|
-
|
|
49
|
+
- [KoppaJS documentation](https://github.com/koppajs/koppajs-documentation)
|
|
50
|
+
- [KoppaJS core](https://github.com/koppajs/koppajs-core)
|
|
51
|
+
- [KoppaJS Vite plugin](https://github.com/koppajs/koppajs-vite-plugin)
|
package/template/_gitignore
CHANGED
package/template/index.html
CHANGED
|
@@ -4,7 +4,7 @@
|
|
|
4
4
|
<meta charset="UTF-8" />
|
|
5
5
|
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
6
|
<title>KoppaJS Minimal Starter</title>
|
|
7
|
-
<link rel="icon" type="image/
|
|
7
|
+
<link rel="icon" type="image/png" href="/favicon.png" />
|
|
8
8
|
<link rel="stylesheet" href="/src/style.css" />
|
|
9
9
|
</head>
|
|
10
10
|
<body>
|
package/template/package.json
CHANGED
|
@@ -3,8 +3,6 @@
|
|
|
3
3
|
"version": "1.0.0",
|
|
4
4
|
"private": true,
|
|
5
5
|
"description": "KoppaJS application scaffolded with create-koppajs.",
|
|
6
|
-
"author": "Bastian Bensch",
|
|
7
|
-
"license": "Apache-2.0",
|
|
8
6
|
"keywords": [
|
|
9
7
|
"koppajs",
|
|
10
8
|
"koppa",
|
|
@@ -14,59 +12,24 @@
|
|
|
14
12
|
"typescript",
|
|
15
13
|
"web-components"
|
|
16
14
|
],
|
|
17
|
-
"packageManager": "pnpm@10.
|
|
15
|
+
"packageManager": "pnpm@10.33.2",
|
|
18
16
|
"engines": {
|
|
19
|
-
"node": ">=22",
|
|
20
|
-
"pnpm": ">=10"
|
|
17
|
+
"node": ">=22.12.0",
|
|
18
|
+
"pnpm": ">=10.24.0"
|
|
21
19
|
},
|
|
22
20
|
"scripts": {
|
|
23
21
|
"dev": "vite --host",
|
|
24
22
|
"build": "tsc --noEmit && vite build",
|
|
25
|
-
"lint": "eslint .",
|
|
26
|
-
"lint:fix": "eslint . --fix",
|
|
27
|
-
"format": "prettier . --write --ignore-unknown",
|
|
28
|
-
"format:check": "prettier . --check --ignore-unknown",
|
|
29
|
-
"test": "vitest run",
|
|
30
|
-
"test:watch": "vitest",
|
|
31
|
-
"test:run": "vitest run",
|
|
32
|
-
"test:coverage": "vitest run --coverage",
|
|
33
|
-
"test:e2e": "pnpm build && playwright test",
|
|
34
|
-
"test:e2e:headed": "pnpm build && playwright test --headed",
|
|
35
|
-
"test:e2e:ui": "pnpm build && playwright test --ui",
|
|
36
|
-
"check": "pnpm lint && pnpm format:check && pnpm typecheck && pnpm test:run && pnpm build",
|
|
37
|
-
"validate": "pnpm check && playwright test",
|
|
38
|
-
"release:check": "pnpm validate",
|
|
39
23
|
"typecheck": "tsc --noEmit",
|
|
40
|
-
"serve": "vite preview"
|
|
41
|
-
"serve:e2e": "vite preview --host 127.0.0.1 --strictPort --port 4173",
|
|
42
|
-
"prepare": "husky"
|
|
24
|
+
"serve": "vite preview"
|
|
43
25
|
},
|
|
44
26
|
"dependencies": {
|
|
45
|
-
"@koppajs/koppajs-core": "
|
|
27
|
+
"@koppajs/koppajs-core": "3.0.7"
|
|
46
28
|
},
|
|
47
29
|
"devDependencies": {
|
|
48
|
-
"@
|
|
49
|
-
"@
|
|
50
|
-
"
|
|
51
|
-
"
|
|
52
|
-
"@playwright/test": "^1.58.2",
|
|
53
|
-
"@types/node": "^25.4.0",
|
|
54
|
-
"@vitest/coverage-v8": "^4.0.18",
|
|
55
|
-
"eslint": "^10.0.3",
|
|
56
|
-
"globals": "^17.4.0",
|
|
57
|
-
"husky": "^9.1.7",
|
|
58
|
-
"lint-staged": "^16.3.3",
|
|
59
|
-
"prettier": "^3.8.1",
|
|
60
|
-
"typescript": "^5.9.3",
|
|
61
|
-
"typescript-eslint": "^8.57.0",
|
|
62
|
-
"vite": "7.2.6",
|
|
63
|
-
"vitest": "^4.0.18"
|
|
64
|
-
},
|
|
65
|
-
"lint-staged": {
|
|
66
|
-
"*.{js,mjs,cjs,ts,mts,cts}": [
|
|
67
|
-
"eslint --fix",
|
|
68
|
-
"prettier --write"
|
|
69
|
-
],
|
|
70
|
-
"*.{css,html,json,md,yml,yaml}": "prettier --write"
|
|
30
|
+
"@koppajs/koppajs-vite-plugin": "1.0.4",
|
|
31
|
+
"@types/node": "25.6.0",
|
|
32
|
+
"typescript": "5.9.3",
|
|
33
|
+
"vite": "7.3.2"
|
|
71
34
|
}
|
|
72
35
|
}
|
|
Binary file
|
|
Binary file
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[template]
|
|
2
2
|
<div class="app-root">
|
|
3
|
-
<img src="
|
|
3
|
+
<img src="/koppajs-logo.png" width="420" alt="KoppaJS Logo" class="logo">
|
|
4
4
|
<p class="subtitle">Minimal Starter</p>
|
|
5
5
|
<counter-component></counter-component>
|
|
6
6
|
</div>
|
|
@@ -31,5 +31,3 @@
|
|
|
31
31
|
opacity: 0.8;
|
|
32
32
|
}
|
|
33
33
|
[/css]
|
|
34
|
-
|
|
35
|
-
|
package/template/tsconfig.json
CHANGED
|
@@ -10,17 +10,10 @@
|
|
|
10
10
|
"forceConsistentCasingInFileNames": true,
|
|
11
11
|
"noEmit": true
|
|
12
12
|
},
|
|
13
|
-
"include": [
|
|
14
|
-
"src/**/*.ts",
|
|
15
|
-
"tests/**/*.ts",
|
|
16
|
-
"playwright.config.ts",
|
|
17
|
-
"vite.config.d.mts"
|
|
18
|
-
],
|
|
13
|
+
"include": ["src/**/*.ts"],
|
|
19
14
|
"exclude": [
|
|
20
15
|
"coverage",
|
|
21
16
|
"dist",
|
|
22
|
-
"node_modules"
|
|
23
|
-
"playwright-report",
|
|
24
|
-
"test-results"
|
|
17
|
+
"node_modules"
|
|
25
18
|
]
|
|
26
19
|
}
|