본문으로 바로가기
제품데스크톱 도구TASTECAD도면 확인TASTEFILES파일 관리TASTEFTP파일 전송TASTESSH원격 작업공간TASTEZIP압축과 해제개발 도구TASTECODERust 통합 개발 환경TASTESTUDIO통합 개발·테스트 환경TASTEETL데이터 통합(ETL)서버TASTEREMOTE원격 데스크톱 서버TASTEGEO공간정보 서버TASTEMAIL메일 작업공간시작하기다운로드문서구매모든 제품
마켓플레이스
소식
개발소식오늘의 개발 소식개발 문서프로그래밍 언어RustTypeScriptJavaScriptPythonGoC#JavaCC++KotlinDart프런트엔드 프레임워크Next.jsReactVue.js · NuxtSvelteKitAngular서버 프레임워크Spring BootDjangoFastAPIASP.NET CoreNestJS · Express앱 · 데스크톱 프레임워크TauriFlutterReact NativeElectron알고리즘알고리즘 기초알고리즘 핵심알고리즘 심화실무 알고리즘
커뮤니티프로젝트개발 로그프롬프트AI 도구 이슈쇼케이스커뮤니티 안내
협업기술 전수홈페이지 구축데스크톱 앱 구축릴리스·결제 파이프라인판매 파트너문의
서비스원격 데스크톱설치 패키지 커스텀
TASTEDEV
제품

데스크톱 도구

TASTECAD복잡한 도면을 가볍게 열다TASTEFILES필요한 파일만, 가장 빠르게TASTEFTP파일이 오가는 가장 단정한 길TASTESSH서버와 나 사이, 더 단단한 연결TASTEZIP더 빠르게 묶고, 더 안전하게 풀다

개발 도구

TASTECODERust 앱을 편집 · 빌드 · 디버깅 · 테스트까지 한 창에서TASTESTUDIO편집부터 원격 테스트와 승인 기반 AI 수정까지TASTEETL값을 보며 데이터를 옮깁니다

서버

TASTEREMOTE우리 회사 서버로 운영하는 원격 데스크톱TASTEGEOGeoServer 호환 공간정보 서버를 Rust로 다시 세웁니다TASTEMAIL메일의 주도권을 다시 내 손에

시작하기

다운로드모든 제품 최신 판문서제품 사용법구매구독 · 영구 라이선스모든 제품모든 제품 한눈에
모든 제품
마켓플레이스소식
개발

소식

오늘의 개발 소식언어 · 프레임워크 · GitHub · AI 공식 발표개발 문서언어 · 프레임워크 · 알고리즘 안내서

프로그래밍 언어

RustTypeScriptJavaScriptPythonGoC#JavaCC++KotlinDart

프레임워크

프런트엔드 프레임워크Next.jsReactVue.js · NuxtSvelteKitAngular
서버 프레임워크Spring BootDjangoFastAPIASP.NET CoreNestJS · Express
앱 · 데스크톱 프레임워크TauriFlutterReact NativeElectron

알고리즘

알고리즘 기초복잡도 분석 · 정렬 · 탐색 · 기본 자료구조 · 트리와 힙알고리즘 핵심그래프 탐색 · 최단 경로와 최소 신장 트리 · 동적 계획법 · 탐욕 알고리즘 · 분할 정복 · 백트래킹알고리즘 심화문자열 알고리즘 · 수학과 정수론 · 비트 연산 · 구간 트리 · 유니온 파인드실무 알고리즘코딩 면접 풀이 전략 · LRU 캐시 · 레이트 리미터 · 일관된 해시
개발 문서 전체 보기
커뮤니티
프로젝트빌더와 작업 발견개발 로그결정과 시행착오프롬프트재사용 가능한 지시AI 도구 이슈Claude · Codex · Gemini 문제와 우회법쇼케이스완성된 결과커뮤니티 안내공개하고 함께 만드는 방식
협업
기술 전수Rust·egui 네이티브 앱 만들기홈페이지 구축10개 언어, 계정, 문서·다운로드데스크톱 앱 구축Rust·egui, WebView 없이릴리스·결제 파이프라인서명 · MSI·deb·rpm·AppImage · 해시판매 파트너소개하고 결제액의 30% 받기문의구축 · 제휴 · 투자 문의
서비스
원격 데스크톱브라우저로 내 컴퓨터에 접속설치 패키지 커스텀필요한 기능만, 설정은 미리
구매
KO
한국어EnglishDeutschEspañolFrançaisItalianoPortuguês (Brasil)日本語简体中文繁體中文
로그인
로그인
TASTEDEV

작은 도구부터, 더 좋은 개발까지.

support@tastedev.netTASTEDEV 후원하기
제품제품군구매문서다운로드마켓플레이스고객 지원
커뮤니티프로젝트개발 로그프롬프트AI 도구 이슈쇼케이스
정책개인정보처리방침이용약관구독 약관환불 정책커뮤니티 운영 정책
계정로그인가입하기
방문자
오늘
012345678901234567890123456789012345678901234567890123456789
어제
012345678901234567890123456789012345678901234567890123456789
누적 조회
0123456789012345678901234567890123456789012345678901234567890123456789012345678901234567890123456789
상호
지엑스소프트
대표자
최영구
사업자등록번호
853-44-00368
주소
인천광역시 미추홀구 경인로 351 9층 V24
전화
+82-10-4404-1523
이메일
whitecalvin@tastedev.net
개인정보 보호책임자
최영구

© 2026 TASTEDEV제품 정보는 현재 검증된 개발 소스를 기준으로 합니다.출시·고도화 중

SvelteKit 문서
SvelteKit
SvelteKit 시작하기프로젝트 구조핵심 개념데이터와 상태테스트빌드와 배포
토론

SvelteKit 안내서 · 1/6

SvelteKit 시작하기

이 장에서는 SvelteKit 프로젝트를 만들고 개발 서버를 띄운 뒤, 첫 페이지를 고쳐 보는 데까지 진행합니다. 편집기 설정과 자주 쓰는 명령도 함께 정리합니다.

SvelteKit은 무엇인가

Svelte는 컴포넌트를 컴파일 단계에서 효율적인 자바스크립트로 바꾸는 UI 프레임워크이고, SvelteKit은 그 위에 라우팅, 서버 렌더링(SSR), 데이터 불러오기, 폼 처리, 빌드와 배포를 더한 애플리케이션 프레임워크입니다. 개발 서버와 번들링은 Vite가 맡고, SvelteKit은 Vite 플러그인 형태로 동작합니다. React에 Next.js가 있듯이 Svelte에는 SvelteKit이 있다고 생각하면 됩니다.

준비물

  • 현재 LTS 판의 Node.js와 npm(또는 pnpm, Yarn, Bun)
  • 편집기: Visual Studio Code와 공식 Svelte for VS Code 확장을 권장합니다
  • 터미널 사용에 대한 기본 지식

설치된 Node.js 판은 다음처럼 확인합니다. SvelteKit이 요구하는 최소 판보다 낮다면 nodejs.org에서 LTS 판을 내려받습니다.

node --version
npm --version

프로젝트 만들기

SvelteKit 프로젝트는 공식 명령줄 도구 sv로 만듭니다. 따로 설치할 필요 없이 npx로 실행합니다.

npx sv create my-app
cd my-app
npm run dev

sv create를 실행하면 몇 가지를 묻습니다.

질문설명
템플릿minimal(빈 앱), demo(예제 게임이 들어 있는 앱), library(Svelte 라이브러리)
타입 검사TypeScript(ts) 또는 JSDoc 주석(jsdoc)
추가 기능(add-on)Prettier, ESLint, Vitest, Playwright, Tailwind CSS, Drizzle 등
패키지 관리자의존성을 바로 설치할 도구(npm, pnpm, yarn, bun, deno)

질문 없이 만들고 싶다면 옵션을 직접 넘깁니다. 이 안내서는 TypeScript를 기준으로 설명합니다.

npx sv create my-app --template minimal --types ts --no-add-ons --install npm

# 나중에 추가 기능을 붙일 때
npx sv add prettier eslint
npx sv add vitest playwright

개발 서버 실행

npm run dev는 Vite 개발 서버를 띄웁니다. 기본 주소는 http://localhost:5173이고, 파일을 저장하면 페이지 전체를 새로 고치지 않고 바뀐 부분만 반영되는 HMR이 동작합니다.

# 브라우저를 자동으로 열기
npm run dev -- --open

# 같은 네트워크의 다른 기기에서 접속하도록 열기
npm run dev -- --host

첫 페이지 고치기

src/routes/+page.svelte가 첫 화면(/)입니다. 내용을 다음처럼 바꾸고 저장해 보세요. $state는 Svelte 5의 룬(rune)으로, 값이 바뀌면 화면이 자동으로 갱신되는 반응형 상태를 만듭니다.

<script lang="ts">
  let name = $state('SvelteKit');
  let count = $state(0);
</script>

<h1>Hello, {name}!</h1>

<input bind:value={name} />
<button onclick={() => count++}>
  {count}번 눌렀습니다
</button>

bind:value는 입력 상자와 변수를 양방향으로 묶고, onclick은 일반 HTML 속성처럼 이벤트 처리기를 넘깁니다. 새 페이지를 만들려면 src/routes/about/+page.svelte처럼 폴더를 만들고 그 안에 +page.svelte를 두면 /about 주소가 생깁니다.

두 번째 페이지와 링크

src/routes/about/+page.svelte 파일을 만들고 다음 내용을 넣습니다. 첫 페이지에는 <a href="/about">소개</a> 링크를 추가합니다.

<svelte:head>
  <title>소개</title>
</svelte:head>

<h1>소개</h1>
<p>이 페이지의 주소는 /about 입니다.</p>
<a href="/">처음으로</a>

<svelte:head> 안의 요소는 문서의 <head>에 들어가므로 페이지마다 제목과 메타 태그를 정할 수 있습니다. 링크를 누르면 SvelteKit이 페이지 전체를 다시 받지 않고 필요한 코드만 불러와 화면을 바꿉니다. 첫 요청은 서버에서 HTML로 렌더링되므로 검색 엔진도 내용을 읽을 수 있습니다.

자주 쓰는 명령

package.json의 scripts에는 다음 명령이 들어 있습니다.

명령하는 일
npm run dev개발 서버 실행
npm run build운영용 빌드(vite build)
npm run preview빌드 결과를 로컬에서 미리 보기
npm run checksvelte-check로 타입과 Svelte 문법 검사

편집기 설정

VS Code에서는 Svelte for VS Code 확장을 설치하면 .svelte 파일의 문법 강조, 자동 완성, 타입 오류 표시, 서식 정리를 쓸 수 있습니다. 같은 언어 서버를 쓰는 확장이 다른 편집기(JetBrains, Neovim, Zed 등)에도 있습니다. 커밋 전에는 npm run check로 프로젝트 전체를 한 번 더 검사하는 습관을 들이면 좋습니다.

정리

  • SvelteKit은 Svelte 컴포넌트 위에 라우팅, SSR, 데이터 불러오기, 배포를 더한 Vite 기반 프레임워크입니다.
  • npx sv create로 프로젝트를 만들고 npm run dev로 개발 서버를 띄웁니다.
  • 페이지는 src/routes 안의 +page.svelte 파일이며, 폴더 구조가 곧 주소입니다.
  • 추가 기능은 npx sv add로 나중에도 붙일 수 있습니다.
이 장에 대해 질문이 있나요?
다음 장프로젝트 구조

댓글 0개

인기 댓글순최신순

로그인 · 로그인하면 댓글을 남길 수 있습니다.