This is a cutting-edge template for creating Sveltekit monorepos using the latest tools available in the ecosystem (propably already outdated).
- ESLint for code linting
- Prettier for code formatting
- NPM (nodejs packages manager)
- Turborepo (incremental bundler and build system)
- Semantic Release (automated version management)
- Inlang for I18n
Before you begin, ensure you have met the following requirements:
- NodeJS: Make sure you have NodeJS installed on your system. You can download it from NodeJS.
To get started with this template, follow these steps:
-
Clone this repository:
git clone [email protected]:Gernii/sveltekit-turbo-starter.git
-
Change into the project directory:
cd sveltekit-turborepo-starter
-
Install the project dependencies:
npm install
-
Start the development server:
npm run dev
This will start the the
web
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.
-
Create new sveltekit apps in
apps/
npm create svelte@latest my-app
-
Add your monorepo
packages/
dependencies inside your new apps package.json files"dependencies": { "@repo/eslint-config": "*" },
-
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, ESLint, Prettier, Inlang,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.