PrevelteKit
A lightweight, high-performance web application framework written in Go, featuring server-side rendering with WebAssembly hydration.
This entire site (3 pages, routing, live Bitcoin API) is ~44 kB brotli-compressed.
Static-first architecture
Deploy anywhere as pure HTML + WASM. No server runtime needed — works on GitHub Pages, S3, or any CDN.
Lightning fast builds
Native Go compiler for SSR, TinyGo for WASM. No bundler, no transpiler, no build tool chain.
No JavaScript ecosystem
Pure Go from component to deployment. No npm, no node_modules, no package.json.
Explore
Bitcoin Price Demo
Live Bitcoin price fetched from an API with auto-refresh — a real-world example.
Examples
Interactive showcase with 11 examples: basics, lists, routing, fetch, storage, and more.
Features
Lightning Fast Builds
Go compiles in milliseconds. TinyGo produces compact WASM binaries. No slow bundler step.
Minimalistic
Small framework with no code generation, no intermediate files, no complex toolchain.
SSR + WASM Hydration
Server-side rendered HTML for instant page loads. WebAssembly hydrates for interactivity.
Deploy Anywhere
Output is pure static files. GitHub Pages, S3, Cloudflare, Netlify — any static host works.
Type-Safe
Full Go type safety with compile-time error checking. Catch bugs before they reach production.
Zero Config
Works with sensible defaults. Just go run for SSR and tinygo build for WASM.
Quick Start
Create a new project
mkdir myapp && cd myapp
go mod init myapp
go run github.com/tbocek/preveltekit/v2/cmd/build@latest initScaffolds main.go, build.sh, Dockerfile, and assets. Or copy from cmd/build/assets/.
Build and run with Docker
docker build -f Dockerfile.dev -t myapp-dev .
docker run --init -p 8080:8080 -v $PWD:/app myapp-devOpen http://localhost:8080 — live reload on file changes, no other dependencies required.