Minimal Vite-based starter template for ElementaryUI, used for Swift WebAssembly frontend projects
starter-vite — Vite Starter Template
By elementary-swift
A minimal Vite starter template for ElementaryUI, used to set up Swift WebAssembly frontend projects, including development, build, and deployment scripts.
Explore the design
Compare the page layouts and mobile experience. Open any screenshot for a closer look.
Actual screenshot captured by the server browser.
All pages & views 2
Screenshots show visual appearance; interactive behavior may differ.
What stands out
A quick read of the recorded project description.
Includes the @elementary-swift/vite-plugin-swift-wasm plugin, with Embedded Swift enabled by default for release builds
npm run dev provides hot reload; saving Swift files triggers a rebuild and refresh
Supports two ways to prepare the development environment: native installation and Dev Containers
Provides build and preview scripts for release build bundling and local preview
Licensed under 0BSD; repository code can be used freely without attribution
Template Details
This is a Vite starter template for ElementaryUI, maintained by elementary-swift and licensed under 0BSD. It serves as a starting point for Swift WebAssembly frontend projects: Vite provides the development server and build pipeline, and the @elementary-swift/vite-plugin-swift-wasm plugin compiles Swift code to WebAssembly.
The template offers two ways to prepare the environment. Native installation requires Swift 6.3+ with a matching WebAssembly Swift SDK, Node.js 22+, and optionally wasm-opt; alternatively, you can use Dev Containers by opening the project in Docker and an editor that supports Dev Containers and reopening it in the container, with the first build potentially taking several minutes. The README provides the commands swift --version and swift sdk list to verify that the toolchain and SDK are ready.
The development workflow is driven by npm scripts: npm run dev starts a development server with hot reload, first running a debug build in the browser, and saving Swift files triggers a rebuild and refresh; npm run build builds and bundles in release mode, and npm run preview is used to preview the build result locally. Embedded Swift is enabled by default in vite.config.ts for release builds; for more configuration options, refer to the vite-plugin-swift-wasm plugin homepage.
In terms of limitations, the template itself only covers the Vite and Swift WebAssembly build pipeline; it does not include routing, state management, backend, or deployment platform configuration. The 0BSD license covers only the repository code; third-party assets such as demo images, fonts, and icons, as well as external services like domains and hosting, must be verified separately and may incur costs.
Is it right for your project?
Use Cases
- Writing WebAssembly frontend applications that run in the browser using Swift
- Debugging ElementaryUI components under the Vite development server with hot reload
- Building and bundling Swift WebAssembly applications in release mode for deployment
- Unifying Swift and Node.js toolchains in a containerized development environment
Suitable For
- Developers familiar with Swift who want to try WebAssembly frontend development
- Teams needing a minimal ElementaryUI project skeleton as a starting point
- Projects using the Vite build pipeline that want to integrate the Swift compilation plugin
- Users willing to configure the Swift SDK for WebAssembly and Node.js environment as per the README
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Native installation requires Swift 6.3+ with a matching WebAssembly Swift SDK, Node.js 22+, and optionally wasm-opt
- 2
Alternatively, use Docker and the Dev Containers extension to open the project in a container; the first build may take several minutes
- 3
After cloning or pulling the template with degit, run npm install to install dependencies
- 4
Use swift --version and swift sdk list to confirm that the toolchain and SDK versions match
- 5
Use npm run dev for development, and npm run build and npm run preview for building and previewing
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis entry covers the free version in a public repository under the 0BSD license; the free scope is the code of this version and does not imply that external services or third-party assets are free.
Must comply with when using
- Use, copy, modify, and distribute for any purpose, including free or paid commercial use, is permitted.
- The code license does not require retaining copyright or license notices in copies; third-party assets remain subject to their own licenses.
- The code is provided as is; warranties and limitations of liability are governed by the original license and applicable law.
Additional costs & items to verify
- Using this template requires installing Swift 6.3 or later and configuring a matching WebAssembly Swift SDK; otherwise, the project cannot be compiled.
- The development environment requires Node.js 22 or later; lower versions cannot run the npm scripts as per the README.
- Choosing the Dev Containers approach requires Docker and an editor extension that supports Dev Containers; the first build may take several minutes.
- wasm-opt is an optional dependency; if needed, install it via Homebrew or manual download.
- The template only provides default Vite configuration; for more configuration options, refer to the external plugin vite-plugin-swift-wasm homepage, which is an external dependency.
- Demo images, fonts, icons, and other third-party assets must be verified under their respective licenses; they cannot be judged solely by the code's 0BSD license.
- External services such as domains, hosting, databases, payments, or AI may incur additional charges.
View Original Text Basis
for any purpose with or without fee is hereby granted
Original License Text
Swift 6.3+ with matching Swift SDK for WebAssembly
Original README
Node.js 22+ ([nodejs.org](https://nodejs.org/en/download))
Original README
[Docker](https://www.docker.com)
Original README
wasm-opt (optional, [homebrew](https://formulae.brew.sh/formula/binaryen) or [manual](https://github.com/WebAssembly/binaryen/releases))
Original README
https://github.com/elementary-swift/starter-vite/blob/main/LICENSEhttps://github.com/elementary-swift/starter-vite/blob/main/README.mdFor all configuration options, visit the plugin's homepage: [vite-plugin-swift-wasm](https://github.com/elementary-swift/vite-plugin-swift-wasm).
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-03. Results only cover the materials read; dependencies, images, fonts, and subsequent term changes are subject to their respective original texts.
Project checks & description sources
Template Information
- Source platforms
- GitHub
- Documentation and maintenance reference score
- More documented · 87 / 100
- Technologies
- Vite
- Website type
- Starter
How this score is calculated
Our heuristic uses license records (up to 30), a demo link (12), a preview (10), stars (15), recorded maintenance (15), description completeness (8), feature records (5) and classification data (5). It is not a code, security or performance test, or a Google score. A link does not establish tested functionality.
What to verify for this project
- Repository update recorded
- 2026-08-21
- Screenshot last checked
- 2026-10-03
A demo link is listed. Check it with your own content and viewport sizes; its presence does not confirm that forms, authentication or payments work.
The catalog identifies Vite as the primary stack. Check the actual dependency manifest and lockfile for versions and hosting requirements. These notes use recorded metadata, not a code audit or a deployment test.
Use a selection guide →How this description was prepared
AI-assisted description based on catalog records and repository material. Repository authors are not automatically the reviewers of this description.
Review declaration: [email protected] · 2026-10-04
Inspect the recorded source material
SHA-256: c3f19bee920b39c10aaccb691535b267de8f3a24e528ede65b6885e680d10e76
2026-10-03T15:00:55.395Z
Source file / repository<p align="center">
<a href="https://elementary.codes">
<img src="https://elementary-swift.github.io/assets/elementary-logo.svg" width="125px" alt="Elementary Logo">
</a>
</p>
# Minimal Vite Starter for ElementaryUI
A starter template for building web applications with [ElementaryUI](https://github.com/elementary-swift/elementary-ui) powered by [Vite](https://vite.dev/).
Click **Use this template** on GitHub or check the [docs](https://docs.github.com/en/repositories/creating-and-managing-repositories/creating-a-repository-from-a-template) about using templates.
<p align="center">
<img src="https://elementary-swift.github.io/assets/vite-starter-split-screen.gif" alt="Elementary Demo Split Screen">
</p>
## Getting Started
You can use [degit](https://github.com/Rich-Harris/degit) to scaffold a local project.
```sh
npx degit elementary-swift/starter-vite my-swift-web-app
cd my-swift-web-app
```
or simply clone it:
```sh
git clone https://github.com/elementary-swift/starter-vite.git my-swift-web-app
```
## Development Environment
### Option 1: Native Install
**Prerequisites:**
- Swift 6.3+ with matching Swift SDK for WebAssembly ([swift.org](https://www.swift.org/documentation/articles/wasm-getting-started.html))
- Node.js 22+ ([nodejs.org](https://nodejs.org/en/download))
- wasm-opt (optional, [homebrew](https://formulae.brew.sh/formula/binaryen) or [manual](https://github.com/WebAssembly/binaryen/releases))
```sh
npm install
```
### Option 2: Dev Containers
**Prerequisites:**
- [Docker](https://www.docker.com)
- [Dev Containers](https://marketplace.visualstudio.com/items?itemName=ms-vscode-remote.remote-containers) extension for VS Code or any compatible editor
Open the project folder in your editor and run the "Dev Containers: Reopen in Container" command. The initial build may take several minutes.
## Verify Installation
```sh
# Verify Swift toolchain
swift --version
# look for a compiler tag like this: (swift-6.3.1-RELEASE)
# Verify Swift SDK for WebAssembly
swift sdk list
# should contain matching entries, eg: swift-6.3.1-RELEASE_wasm and swift-6.3.1-RELEASE_wasm-embedded
```
## Develop
```sh
# Start development server with hot reload
npm run dev
```
Runs an initial debug build of the WebAssembly app in the browser. Swift files are watched and trigger an instant rebuild/reload on save.
## Deploying
```sh
# Build in release and bundle for deployment
npm run build
# Preview the built web app locally
npm run preview
```
## Configuration
The template comes with a [Vite config](vite.config.ts) that uses *Embedded Swift* for release builds.
```ts
// vite.config.ts
import { defineConfig } from "vite";
import swiftWasm from "@elementary-swift/vite-plugin-swift-wasm";
export default defineConfig({
plugins: [
swiftWasm({
useEmbeddedSDK: true,
}),
],
});
```
For all configuration options, visit the plugin's homepage: [vite-plugin-swift-wasm](https://github.com/elementary-swift/vite-plugin-swift-wasm).
## License
[0BSD License](LICENSE) - use it freely with no attribution required.
Explore similar templates
Compare previews and descriptions within the same stack and category.

react-starter-kit
A full-stack SaaS monorepo starter built on Vite and React, with Bun, TypeScript, tRPC, Drizzle ORM, Better Auth, Stripe, and Cloudflare Workers. It includes email OTP, passkey, Google OAuth, organizations, subscription billing, Drizzle migrations, seed scripts, and Terraform infrastructure.
Vite · SaaS

cove
Cove is a minimal TanStack Start starter template maintained by mugnavo, integrating React, TanStack Router/Query, Tailwind CSS, shadcn/ui, Drizzle ORM with PostgreSQL, Better Auth, Vite Plus, and Nitro.
Vite · SaaS

vite-react-boilerplate
A production-ready Vite + React starter template with TypeScript, Tailwind CSS, TanStack Router/Query/Table, Storybook, React Hook Form + Zod, Vitest and Playwright testing, plus Husky/Commitizen/Commitlint commit conventions.
Vite · Starter

react-vite-admin
A backend management starter built on Vite and React, integrating Recoil, React Query, TypeScript, and Axios, with Ant Design-style interface screenshots. Suitable as a starting point for management-side projects, licensed under MIT, with Chinese documentation and common scripts.
Vite · Admin dashboard

typescript-react_best_practices-vite_template
A Vite + React + TypeScript starter template by CodelyTV, preconfigured with Jest and React Testing Library unit tests, Cypress end-to-end tests, ESLint and Prettier using Codely's shared configuration, GitHub Actions workflows, a Makefile, and Sass.
Vite · Starter

cloudflare-starter-kit
A Cloudflare Workers project scaffolding template maintained by kriasoft, using Vite and TypeScript, with three built-in workspaces: api, app, and edge, and preconfigured local testing, multiple environments, and a GitHub Actions deployment workflow.
Vite · Starter
