Vite-based, with React Router in framework mode, supporting server-side rendering, SPA and prerendered builds, and typed routes
quiet-on-set — Vite Starter Template
By felton
quiet-on-set is a Vite-based React starter template preconfigured with React Router, Tailwind CSS, and shadcn/ui, suited to starting a site directly.
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.
Integrates Tailwind CSS with the Base UI variant of shadcn/ui, and provides TypeScript, oxfmt, oxlint, Vitest, and Testing Library
Built-in Light / Dark / System appearance menu with no extra provider
Social cards, canonical links, and subpaths configured centrally through app/lib/site.ts
Provides an UnsplashPicture component that outputs a responsive picture with different crops per breakpoint
Includes GitHub Actions CI, release-please, and grouped Dependabot update configuration
Template Details
quiet-on-set is a Vite starter template whose README states that routing, styling, components, formatting, and CI are already configured, so developers or coding agents can move straight into building actual pages. The stack includes React Router in framework mode (server-side rendering, SPA or prerendered builds, typed routes), Tailwind CSS with the Base UI variant of shadcn/ui, and TypeScript, oxfmt, oxlint, Vitest, and Testing Library. The template ships a light/dark/system menu that needs no provider, social cards and canonical links driven centrally by app/lib/site.ts, an UnsplashPicture responsive image component that crops per breakpoint, and GitHub Actions CI, release-please, and Dependabot configuration. The README states explicitly that it suits marketing sites, documentation, dashboards, and small apps, and is not suited to projects that need Next.js or Astro, the Radix version of shadcn/ui, or a package manager other than pnpm. Ways to create a project include pnpm create quiet-on-set, npm create, degit at a pinned version, Use this template, or gh repo create, followed by pnpm make-it-yours to write site information and clear out template content.
Is it right for your project?
Use Cases
- Use pnpm create quiet-on-set to generate a new project quickly, then run pnpm make-it-yours to finish initialization
- Pull a pinned template version with degit, or create a private repository with GitHub's Use this template
- Let a coding agent continue development under existing conventions, guided by AGENTS.md and CLAUDE.md
- Build a Node server output with pnpm build, or a static SPA with pnpm build:spa
Suitable For
- Marketing sites, documentation sites, dashboards, and small apps
- React projects that want routing, styling, components, testing, and CI preconfigured
- Teams using pnpm that accept the Base UI version of shadcn/ui
Getting started & customization
Use these recorded setup notes alongside the repository instructions for your chosen version.
- 1
Recommended command: pnpm create quiet-on-set my-app, then cd my-app, pnpm install, pnpm dev
- 2
Alternatively use npm create quiet-on-set@latest my-app, or npx degit felton/quiet-on-set#v1.2.1 my-app followed by pnpm make-it-yours
- 3
pnpm make-it-yours writes the name, description, and public URL, resets the version number, records TEMPLATE_VERSION, replaces the README, and deletes itself
- 4
New routes go in app/routes/ and must be registered in app/routes.ts; components can be added with pnpm dlx shadcn@latest add <component>
- 5
For automatic releases, repository settings must allow GitHub Actions to create and approve PRs, and commits must follow Conventional Commits
License & source material
Usage conditions & limitations
Free to use · keep license noticeThis listing covers the free version under the MIT license in the public repository; the free scope is that version's code and does not mean external services or third-party assets are free.
Must comply with when using
- The code of this version may be used, modified, used commercially, and distributed free of charge.
- When distributing copies or substantial portions of the code, the original author's copyright notice and the full MIT license notice must be retained.
- 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
- Demo images, fonts, icons, and other third-party assets must be checked against their own licenses; the code's MIT license alone does not settle this.
- External services such as domains, hosting, databases, payments, or AI may incur separate charges.
- Only applies to projects that do not need Next.js/Astro, the Radix version of shadcn/ui, or a package manager other than pnpm; these technology-choice limits must be confirmed before adoption.
- After using the template, the hero image and its photographer credit must be replaced; the template's bundled Unsplash image and credit do not adapt automatically to the project.
- The sample hero photo comes from Unsplash and is credited to stefano stacchini; that image's licensing and attribution requirements must be verified independently, and not all assets should be assumed to be licensed.
- Enabling automatic releases requires allowing GitHub Actions to create and approve PRs in the GitHub repository settings and following Conventional Commits; the corresponding workflow can be deleted if not needed.
- pnpm create downloads the latest release and runs pnpm make-it-yours, which requires a site name, description, and public URL (or flags such as --yes).
- The degit method copies a single release without git history; other versions must be obtained from the Releases page.
View Original Text Basis
Permission is hereby granted, free of charge
Original License Text
**Good for** marketing sites, docs, dashboards and small apps. **Not for** projects that need Next.js or Astro, the Radix flavor of shadcn/ui, or a package manager other than pnpm.
Original README
2. Swap the hero image and its photographer credit.
Original README
Hero photo by [stefano stacchini](https://unsplash.com/@stak59) on [Unsplash](https://unsplash.com).
Original README
For automated releases, turn on **Settings → Actions → General → Allow GitHub Actions to create and approve pull requests**. Use [Conventional Commits](https://www.conventionalcommits.org/) and squash-merge PRs with a conventional title: `feat:` and `fix:` commits open a release PR, and merging it tags and publishes the release. If you don't want this, delete `.github/workflows/release-please.yml`.
Original README
`pnpm create` downloads the latest release and runs `pnpm make-it-yours` in it. That asks for the site's name, description and public URL (or takes `--name`, `--description`, `--url` and `--yes`) and sets the copy up as your project. `npm create quiet-on-set@latest my-app` works too. [create-quiet-on-set](https://github.com/felton/create-quiet-on-set) lists every option.
Original README
https://github.com/felton/quiet-on-set/blob/main/LICENSEhttps://github.com/felton/quiet-on-set/blob/main/README.mddegit copies one release with no git history. Other versions are on the [Releases](../../releases) page. You can also click **Use this template**, or run `gh repo create my-app --template felton/quiet-on-set --private --clone`, then run `pnpm make-it-yours` in the copy. See [Making it yours](#making-it-yours).
Original README
Compiled by DeepSeek based on repository license and README ·2026-10-20. 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 · 85 / 100
- Technologies
- Vite · React
- 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-10-20
- Screenshot last checked
- 2026-10-20
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: codex-user-requested-batch-review-20261021 · 2026-10-21
Inspect the recorded source material
SHA-256: 8e4639a246c47d2ed45ffc85492d86819f269eb4eb060a8763200c4fdfc0f0b6
2026-10-20T11:17:53.406Z
Source file / repository# quiet on set A quiet, ready-to-shoot Vite starter: React Router, shadcn/ui, Tailwind. Places, everyone. **Docs and live demo: [felton.github.io/quiet-on-set](https://felton.github.io/quiet-on-set/)**. The docs site is itself built with this template. The setup work is already done (routing, styling, components, formatting, CI), so you or a coding agent can start building the actual site straight away. ## What's on set - **React Router v8** in framework mode: server rendering, SPA or pre-rendered builds, typed routes - **Tailwind CSS v4** and **shadcn/ui** on the [Base UI](https://base-ui.com) variant - **TypeScript**, **oxfmt**, **oxlint**, **Vitest** and **Testing Library** - **Dark mode** with a Light / Dark / System menu, no provider needed - **Social cards and canonical links** from one `app/lib/site.ts`, which also sets the subpath - **`UnsplashPicture`**, a responsive `<picture>` with art-directed crops per breakpoint - **GitHub Actions** for CI, release-please and grouped Dependabot updates - **`AGENTS.md`** plus the official React Router and shadcn/ui agent skills **Good for** marketing sites, docs, dashboards and small apps. **Not for** projects that need Next.js or Astro, the Radix flavor of shadcn/ui, or a package manager other than pnpm. ## Quick start ```bash pnpm create quiet-on-set my-app cd my-app pnpm install pnpm dev ``` `pnpm create` downloads the latest release and runs `pnpm make-it-yours` in it. That asks for the site's name, description and public URL (or takes `--name`, `--description`, `--url` and `--yes`) and sets the copy up as your project. `npm create quiet-on-set@latest my-app` works too. [create-quiet-on-set](https://github.com/felton/create-quiet-on-set) lists every option. **A pinned release, without the CLI:** <!-- x-release-please-start-version --> ```bash npx degit felton/quiet-on-set#v1.2.1 my-app cd my-app pnpm make-it-yours ``` <!-- x-release-please-end --> degit copies one release with no git history. Other versions are on the [Releases](../../releases) page. You can also click **Use this template**, or run `gh repo create my-app --template felton/quiet-on-set --private --clone`, then run `pnpm make-it-yours` in the copy. See [Making it yours](#making-it-yours). **With a coding agent:** give it a brief and the command, with the values filled in: `pnpm create quiet-on-set my-app --name "…" --description "…" --yes`. `AGENTS.md`, which `CLAUDE.md` imports, tells it the commands, layout and conventions, and to run `pnpm make-it-yours` if it finds a fresh copy. ## Scripts | Command | What it does | | ------------------ | ---------------------------------------------- | | `pnpm dev` | Dev server at `http://localhost:5173` | | `pnpm build` | Production build to `build/` (Node server) | | `pnpm start` | Serve the production build | | `pnpm build:spa` | Static SPA build to `build/client`, no server | | `pnpm preview:spa` | Serve the SPA build at `http://localhost:4173` | | `pnpm fmt` | Format everything | | `pnpm test` | Run the tests once (`pnpm vitest` to watch) | | `pnpm check` | Format check, lint, typecheck and tests | | `pnpm typecheck` | Generate route types and run `tsc` | | `pnpm favicon` | Rebuild `public/favicon.ico` from its SVG | `pnpm check` is the same command CI runs. ## Making it yours 1. Run `pnpm make-it-yours`. It sets the name, description and public URL in `app/lib/site.ts` and `package.json`, resets versioning to `0.1.0` (`package.json` and `.release-please-manifest.json`) so release-please starts fresh, records the template release in `TEMPLATE_VERSION`, replaces this README, deletes `CHANGELOG.md`, and removes itself. 2. Swap the hero image and its photographer credit. 3. Add routes in `app/routes/` (register them in `app/routes.ts`) and components with `pnpm dlx shadcn@latest add <component>`. 4. Replace the favicon. Edit `assets/favicon-tile.svg`, then run `pnpm favicon`. For automated releases, turn on **Settings → Actions → General → Allow GitHub Actions to create and approve pull requests**. Use [Conventional Commits](https://www.conventionalcommits.org/) and squash-merge PRs with a conventional title: `feat:` and `fix:` commits open a release PR, and merging it tags and publishes the release. If you don't want this, delete `.github/workflows/release-please.yml`. ## Going deeper | Page | Covers | | ----------------------------------------------------------------------------------------------------- | --------------------------------------------------- | | [Call Sheet](https://felton.github.io/quiet-on-set/docs/call-sheet/) | Getting started, scripts, agents | | [Testing](https://felton.github.io/quiet-on-set/docs/call-sheet/#testing) | Where tests go, the `createRoutesStub` pattern | | [Environment variables](https://felton.github.io/quiet-on-set/docs/call-sheet/#environment-variables) | `.env`, `SPA`, `VITE_*` (never secrets) | | [Blocking](https://felton.github.io/quiet-on-set/docs/blocking/) | Project structure, routes, layouts, rendering modes | | [Props](https://felton.github.io/quiet-on-set/docs/props/) | Every shipped component, live, with source | | [Wardrobe](https://felton.github.io/quiet-on-set/docs/wardrobe/) | Theme tokens, dark mode, fonts, hero, favicon | | [Wrap](https://felton.github.io/quiet-on-set/docs/wrap/) | Building, static hosting, GitHub Pages, FAQ | ## License [MIT](LICENSE) --- Hero photo by [stefano stacchini](https://unsplash.com/@stak59) on [Unsplash](https://unsplash.com).
Explore similar templates
Compare previews and descriptions within the same stack and category.

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

vital
Vital is a Vite-based React starter template using TypeScript and Tailwind CSS, with an Atomic Design component directory, path aliases and Hero Icons.
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
