Everything you need to build a Svelte project, powered by sv.
A utility-first CSS framework packed with classes like flex, pt-4, text-center and rotate-90 that can be composed to build any design, directly in your markup Tailwindcss
If you're seeing this, you've probably already done this step. Congrats!
# create a new project in the current directory
npx sv create
# create a new project in my-app
npx sv create my-app
Once you've created a project and installed dependencies with npm install (or pnpm install or yarn), start a development server:
npm run dev
# or start the server and open the app in a new browser tab
npm run dev -- --open
To create a production version of your app:
npm run build
You can preview the production build with npm run preview.
To deploy your app, you may need to install an adapter for your target environment.
All tests are descibed there e2e/README.md.
nvm use 24.0.2
nvm use latest
To ensure a consistent development environment and simplify deployment, you can containerize this Svelte application using Docker. Below are step-by-step instructions “out of the box” and free to use.
Create a file named .dockerignore in the project root:
node_modules
dist
.git
.vscode
*.log
.env
# Dockerfile.dev
FROM node:24-alpine
WORKDIR /app
# Install dependencies
COPY package*.json ./
RUN npm ci
# Copy source code
COPY . .
# Expose Vite dev server port
EXPOSE 5173
# Start Vite in host mode
CMD ["npm", "run", "dev", "--", "--host", "0.0.0.0"]
Build & run:
docker build -f Dockerfile.dev -t talent-calculator:dev
docker run --rm -it -p 5173:5173 -v "${PWD}:/app:delegated" -v /app/node_modules talent-calculator:dev
# Stage 1: build
FROM node:22-alpine AS build
WORKDIR /app
COPY package*.json ./
RUN npm ci
COPY . .
RUN npm run build
# Stage 2: serve
FROM nginx:alpine
COPY --from=build /app/dist /usr/share/nginx/html
EXPOSE 80
CMD ["nginx", "-g", "daemon off;"]
Build & run:
docker build -f Dockerfile.prod -t talent-calculator:prod .
docker run --rm -it -p 8080:80 talent-calculator:prod
version: '3.8'
services:
frontend:
build:
context: .
dockerfile: Dockerfile.dev
ports:
- "5173:5173"
volumes:
- .:/app:delegated
- /app/node_modules
Launch all services:
docker-compose up --build
docker images — list local images docker ps — list running containers docker-compose down — stop and remove containers docker system prune --all --volumes — clean up unused data