Everything you need to start building — nothing you don't.
Table of Contents
This is the official minimal starter template for KoppaJS.
It provides a clean, ready-to-run project with:
- a single app view with a counter component
- Vite as dev server and bundler
- TypeScript support
- zero unnecessary dependencies
Use it as a starting point for new KoppaJS projects or as a reference for how components are registered and composed.
Note: This repo uses
file:dependencies that reference sibling directories in the KoppaJS monorepo. If you want a standalone project (outside the monorepo), usenpx create-koppajsor copy the template fromcreate-koppajs/templatewhich uses published npm versions instead.
- Node.js >= 20
- pnpm
npx create-koppajs my-app
cd my-app
pnpm install
pnpm devThis example lives inside the KoppaJS monorepo and depends on sibling packages
via file: links. Before running it, build the sibling packages first:
# From the monorepo root:
cd koppajs-core && pnpm install && pnpm build && cd ..
cd koppajs-vite-plugin && pnpm install && pnpm build && cd ..
# Then run the example:
cd koppajs-example
pnpm install
pnpm devBuild for production:
pnpm buildType-check without emitting:
pnpm typecheckPreview the production build:
pnpm servekoppajs-example/
├── index.html
├── package.json
├── tsconfig.json
├── vite.config.mjs
├── public/
│ └── favicon.svg
└── src/
├── main.ts
├── style.css
├── app-view.kpa
└── counter-component.kpa
Issues and pull requests are welcome:
https://github.com/koppajs/koppajs-example/issues
Apache License 2.0 — © 2026 KoppaJS, Bastian Bensch
