Pular para o conteúdo
Skillpedia
APIs e servidores (backend)48 mil · #4295

sveltekit

Ajuda seu agente a criar aplicações web completas com SvelteKit. Ele lida com roteamento, renderização e rotas de API em um só lugar.

O que ela faz

SvelteKit é uma ferramenta para criar sites e aplicativos web completos. Ele ajuda a organizar o código, gerenciar como as páginas são exibidas (no servidor ou no navegador) e criar partes que respondem a dados.

Quando usar

  • ✓Ao iniciar um novo projeto web com Svelte.
  • ✓Quando você precisa que seu site seja rápido e apareça bem nos buscadores.
  • ✓Ao criar formulários que enviam informações sem recarregar a página inteira.

Exemplo do que pedir para a IA

“Como eu crio um formulário de contato que envia um email usando SvelteKit?”

Quer saber mais? Abra as seções abaixo.

Como usar

O jeito mais fácil: copie a mensagem abaixo e cole no Claude, ChatGPT, Cursor ou outra IA. Ela lê a skill e segue as instruções.

Link da skill

https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/sveltekit/SKILL.md

Mensagem pronta para colar

Use esta skill para me ajudar: https://github.com/sickn33/agentic-awesome-skills/blob/main/plugins/agentic-awesome-skills-claude/skills/sveltekit/SKILL.md Leia o arquivo SKILL.md desse link e siga as instruções dele na minha tarefa.
Como funciona

Você organiza seu código em pastas que definem as páginas do seu site. SvelteKit cuida de como o conteúdo é carregado e exibido, seja no servidor antes de chegar ao usuário ou no navegador.

Instalação

Jeito mais fácil: copie o link da skill e cole no Claude, ChatGPT ou Cursor pedindo para seguir as instruções.

No terminal (Claude Code, Codex, Cursor), na pasta do projeto:

npx skills add sickn33/agentic-awesome-skills --skill sveltekit

Ou baixe só o arquivo:

curl -L https://raw.githubusercontent.com/sickn33/agentic-awesome-skills/main/plugins/agentic-awesome-skills-claude/skills/sveltekit/SKILL.md -o SKILL.md
Conteúdo técnico (SKILL.md)

Tradução do texto original do autor no GitHub. Os comandos e códigos estão como no original.

Desenvolvimento Full-Stack com SvelteKit

Visão Geral

SvelteKit é o framework oficial full-stack construído sobre o Svelte. Ele oferece roteamento baseado em arquivos, renderização do lado do servidor (SSR), geração de sites estáticos (SSG), rotas de API e ações de formulário progressivas — tudo com o modelo de reatividade em tempo de compilação do Svelte que envia zero sobrecarga de tempo de execução para o navegador. Use esta habilidade ao construir aplicativos web rápidos e modernos onde tanto a experiência do desenvolvedor (DX) quanto o desempenho importam.

Quando Usar Esta Habilidade

  • Use ao construir um novo aplicativo web full-stack com Svelte
  • Use quando precisar de SSR ou SSG com controle granular por rota
  • Use ao migrar um SPA para um framework com capacidades de servidor
  • Use ao trabalhar em um projeto que precisa de roteamento baseado em arquivos e endpoints de API colocalizados
  • Use quando o usuário perguntar sobre as funções +page.svelte, +layout.svelte, load, ou ações de formulário

Como Funciona

Passo 1: Configuração do Projeto

npm create svelte@latest my-app
cd my-app
npm install
npm run dev

Escolha Skeleton project + TypeScript + ESLint/Prettier quando solicitado.

Estrutura de diretórios após a criação:

src/
  routes/
    +page.svelte        ← Root page component
    +layout.svelte      ← Root layout (wraps all pages)
    +error.svelte       ← Error boundary
  lib/
    server/             ← Server-only code (never bundled to client)
    components/         ← Shared components
  app.html              ← HTML shell
static/                 ← Static assets

Passo 2: Roteamento Baseado em Arquivos

Cada arquivo +page.svelte em src/routes/ mapeia diretamente para uma URL:

src/routes/+page.svelte          → /
src/routes/about/+page.svelte    → /about
src/routes/blog/[slug]/+page.svelte  → /blog/:slug
src/routes/shop/[...path]/+page.svelte → /shop/* (catch-all)

Grupos de rotas (sem segmento de URL): envolva em uma pasta (group)/. Rotas privadas (não acessíveis como URLs): prefixe com _ ou (group).

Passo 3: Carregando Dados com Funções load

Use um arquivo +page.ts (universal) ou +page.server.ts (apenas servidor) ao lado da página:

// src/routes/blog/[slug]/+page.server.ts
import { error } from '@sveltejs/kit';
import type { PageServerLoad } from './$types';

export const load: PageServerLoad = async ({ params, fetch }) => {
  const post = await fetch(`/api/posts/${params.slug}`).then(r => r.json());

  if (!post) {
    error(404, 'Post not found');
  }

  return { post };
};
<!-- src/routes/blog/[slug]/+page.svelte -->
<script lang="ts">
  import type { PageData } from './$types';
  export let data: PageData;
</script>

<h1>{data.post.title}</h1>
<article>{@html data.post.content}</article>

Passo 4: Rotas de API (Endpoints de Servidor)

Crie arquivos +server.ts para endpoints no estilo REST:

// src/routes/api/posts/+server.ts
import { json } from '@sveltejs/kit';
import type { RequestHandler } from './$types';

export const GET: RequestHandler = async ({ url }) => {
  const limit = Number(url.searchParams.get('limit') ?? 10);
  const posts = await db.post.findMany({ take: limit });
  return json(posts);
};

export const POST: RequestHandler = async ({ request }) => {
  const body = await request.json();
  const post = await db.post.create({ data: body });
  return json(post, { status: 201 });
};

Passo 5: Ações de Formulário

Ações de formulário são a maneira nativa do SvelteKit de lidar com mutações — sem necessidade de fetch do lado do cliente:

// src/routes/contact/+page.server.ts
import { fail, redirect } from '@sveltejs/kit';
import type { Actions } from './$types';

export const actions: Actions = {
  default: async ({ request }) => {
    const data = await request.formData();
    const email = data.get('email');

    if (!email) {
      return fail(400, { email, missing: true });
    }

    await sendEmail(String(email));
    redirect(303, '/thank-you');
  }
};
<!-- src/routes/contact/+page.svelte -->
<script lang="ts">
  import { enhance } from '$app/forms';
  import type { ActionData } from './$types';
  export let form: ActionData;
</script>

<form method="POST" use:enhance>
  <input name="email" type="email" />
  {#if form?.missing}<p class="error">Email is required</p>{/if}
  <button type="submit">Subscribe</button>
</form>

Passo 6: Layouts e Rotas Aninhadas

<!-- src/routes/+layout.svelte -->
<script lang="ts">
  import type { LayoutData } from './$types';
  export let data: LayoutData;
</script>

<nav>
  <a href="/">Home</a>
  <a href="/blog">Blog</a>

…
Perguntas frequentes

O que é 'file-based routing'?

É uma forma de organizar seu site onde a estrutura de pastas e arquivos dentro de uma pasta específica (src/routes) define automaticamente os endereços (URLs) das suas páginas.

O que significa SSR e SSG?

SSR (Server-Side Rendering) significa que a página é montada no servidor antes de ser enviada para o navegador. SSG (Static Site Generation) significa que a página é criada pronta durante a construção do site, tornando-a muito rápida.

O que são 'API routes'?

São como pequenas funções que rodam no servidor e podem ser chamadas pelo seu site para buscar ou enviar dados, sem que o usuário precise recarregar a página.

Detalhes

Descrição original do autor

Build full-stack web applications with SvelteKit — file-based routing, SSR, SSG, API routes, and form actions in one framework.

repo: sickn33/agentic-awesome-skills

Popularidade

Estrelas no GitHub
48 mil
Posição no ranking
#4295
Licença
MIT
Atualizada em
15/10/2026

Essa skill é útil?

0

Entre para votar.

Comentários

  • …

Mais skills deste repositório

Skills parecidas