An experimental TypeScript project template for web development, built on top of @opinionated-ts/template.
It provides the same tooling foundation as the base template, with an additional web-specific structure and set of defaults.
Note
Deprecation notice for new projects: We're working toward on-demand template creation to reduce cross-repository maintenance and keep shared improvements and release notes aligned. This template remains usable and may continue to receive updates. Read the rationale and follow the transition.
Warning
This template is currently experimental and under active development.
The underlying TypeScript tooling foundation is established, but the web-specific approach and implementation are still being explored and have not yet been fully validated. As a result, the web-specific structure and defaults may change as development progresses.
It is not ready for general use or production projects.
Use this template when exploring or developing web projects that benefit from the Opinionated TS tooling foundation.
It provides:
- A web-focused starting point built on
@opinionated-ts/template - Opinionated defaults for performance, code quality, and developer experience
- A modern Bun-first development environment
- Consistent tooling across Opinionated TS web projects
The web-specific layer is experimental and may evolve significantly as the approach is validated.
For development and experimentation, clone the repository directly:
git clone https://github.com/opinionated-ts/web-template.git my-project
cd my-project
rm -rf .git
git initbun installbun hooks:installUpdate package.json for your project and repository:
{
"name": "your-project-name",
"repository": {
"type": "git",
"url": "git+https://github.com/your-username/your-repo.git"
}
}At minimum, update:
name— your package namerepository.url— your repository URL
The web template inherits the tooling, conventions, and project foundation provided by @opinionated-ts/template.
On top of the base template, it adds the structure and defaults currently being explored for web development.
The web-specific parts are experimental and subject to change as the approach is validated.
@opinionated-ts/template— base TypeScript project template@opinionated-ts/config— shared tooling configuration used across Opinionated TS projects