This is a cutting-edge template for creating Sveltekit monorepos using the latest tools available in the ecosystem (propably already outdated).
- biomejs (replacement for eslint and prettier made in rust)
- bun.sh (replacement for nodejs)
- turborepo (incremental bundler and build system)
- semantic-release (automated version management)
Before you begin, ensure you have met the following requirements:
- Bun: Make sure you have bun installed on your system. You can download it from bun.sh.
To get started with this template, follow these steps:
-
Clone this repository:
git clone [email protected]:emilio-toledo/sveltekit-turbo.git
-
Change into the project directory:
cd sveltekit-turborepo-template
-
Install the project dependencies:
bun install
-
Start the development server:
bun dev
This will start the the
web
anddocs
development servers.
This template follows a TurboRepo structure for managing multiple packages within a single repository. Here's a brief overview of the project structure:
-
apps/
: This directory contains the various applications within your turborepo. Each app is a complete sveltekit web application. -
packages/
: This directory contains the various packages within your turborepo. In this template, you'll find the package:ui
(dedicated to shared svelte components).
-
Create new sveltekit apps in
apps/
bun create svelte@latest my-app
-
Add your monorepo
packages/
dependencies inside your new apps package.json files"dependencies": { "ui": "*" },
-
Enjoy building scalable sveltekit monorepos.
This template is configured to use Semantic Release for versioning and creating releases. Make sure to follow the commit message conventions outlined in the Semantic Release documentation (made easier with the bun commit
command).
This project is licensed under the MIT License - see the LICENSE.md file for details.
Enjoy building your SvelteKit application with TurboRepo, Biome.js, Bun.js, and Semantic Release! If you have any questions or need assistance, please refer to the documentation of the respective tools or seek help from the community.