¿Cómo crear un proyecto de Svelte?

Veamos cómo ejecutar el comando para descargar un repositorio plantilla de Svelte con el que podemos empezar a trabajar, y cómo entender las distintas carpetas de las que se compone un proyecto de Svelte. También vemos el comando para lanzar un servidor web.

Este curso ha sido marcado como anticuado y no está siendo revisado de forma activa. Es posible que la información pueda estar desactualizada o que los enlaces se hayan roto.

Para crear un proyecto con Svelte, lo más sencillo es aprovechar la plantilla oficial que nos ofrece la página web de Svelte y utilizar Vite como herramienta para el desarrollo. Vite nos permite no solo probar la aplicación en tiempo real durante el desarrollo, sino también generar un bundle optimizado para producción, que es un único archivo .js que el navegador puede descargar y ejecutar eficientemente.

El proceso para iniciar un proyecto es bastante directo. En lugar de usar el comando genérico que crea un proyecto llamado myapp, podemos personalizar el nombre para que sea más descriptivo. Por ejemplo, podemos ejecutar en la línea de comandos:

npm init vite primer-svelte --template svelte

Aquí le indicamos a npm que queremos crear un proyecto con Vite llamado primer-svelte y que use la plantilla para Svelte. Es importante destacar que la pronunciación correcta de Vite es “vite” con sonido francés, aunque a veces se pronuncie “vait”.

Después de ejecutar este comando, es posible que nos pregunte si queremos instalar create vite; seguimos las instrucciones que nos da. Luego, entramos en la carpeta del proyecto con:

cd primer-svelte

Y ejecutamos:

npm install

para instalar todas las dependencias necesarias. Esto puede tardar un poco, así que es un buen momento para explorar qué archivos y carpetas se han creado.

Al abrir el proyecto en un editor como Visual Studio Code, veremos varios elementos. Algunos, como node_modules o package.json, son comunes en proyectos de Node.js y no requieren mucha explicación. Pero hay carpetas que sí son clave para entender cómo funciona un proyecto Svelte.

La carpeta src contiene el código fuente de nuestra aplicación. Aquí es donde estarán los componentes de Svelte, que son archivos con extensión .svelte. Estos componentes son la base para construir la interfaz y la lógica de nuestra aplicación. Dentro de src suele haber una subcarpeta llamada lib, que sirve para organizar componentes que queramos reutilizar o agrupar de forma separada.

También encontraremos una carpeta llamada assets, donde podemos colocar imágenes u otros recursos que queramos importar directamente en nuestro código. Por ejemplo, podemos importar una imagen con una sentencia import y luego usarla en una etiqueta <img> dentro de un componente.

Además, existe la carpeta public, destinada a almacenar recursos estáticos que queremos servir tal cual, sin procesamiento. Aquí podemos poner el favicon, archivos PDF u otros elementos que el servidor entregará directamente.

En la raíz del proyecto está el archivo vite.config.js, que contiene la configuración de Vite. Normalmente no es necesario modificarlo, ya que viene preparado con el plugin vite-plugin-svelte, que se encarga de transformar los archivos .svelte en archivos .js y .css que el navegador puede entender.

Para ver nuestra aplicación en acción, simplemente ejecutamos:

npm run dev

Este comando lanza un servidor de desarrollo con Vite y nos muestra una URL local que podemos abrir en el navegador. La aplicación que veremos es interactiva y nos da una idea de lo que podemos construir con Svelte. Aunque la apariencia puede variar según la versión de Svelte que estemos usando, la funcionalidad básica estará lista para que empecemos a trabajar.

Con esta base lista, el siguiente paso es comenzar a crear nuestros propios componentes de Svelte y construir aplicaciones más complejas y personalizadas.

Lista de reproducción
  1. 1
    ¿Qué es Svelte?
    9 minutos
  2. 2
    ¿Cómo crear un proyecto de Svelte?
    7 minutos
  3. 3
    Creando nuestro primer componente
    7 minutos
  4. 4
    Datos dinámicos y props
    7 minutos
  5. 5
    Anidando componentes
    7 minutos
  6. 6
    Capturando eventos
    7 minutos
  7. 7
    Eventos y reactividad
    8 minutos
  8. 8
    Atributos condicionales e IF
    9 minutos
  9. 9
    Bucles
    11 minutos
  10. 10
    Bloques await
    7 minutos
  11. 11
    Bind
    8 minutos
  12. 12
    bind:this
    6 minutos
  13. 13
    ¿Para qué nos sirve un evento personalizado?
    6 minutos
  14. 14
    createEventDispatcher
    6 minutos
  15. 15
    Eventos con detalles
    7 minutos
  16. 16
    Reenviando eventos
    6 minutos
  17. 17
    Ejemplo de eventos (primera parte)
    12 minutos
  18. 18
    Ejemplo de eventos (y segunda parte)
    16 minutos
  19. 19
    Modificadores de eventos
    6 minutos
  20. 20
    Fundamentos del CSS con Svelte
    9 minutos
  21. 21
    Clases condicionales
    7 minutos
  22. 22
    Estilos en línea y variables CSS
    8 minutos
  23. 23
    Estilos globales
    6 minutos
  24. 24
    Importar hojas de estilo externas
    5 minutos
  25. 25
    Reactividad experta con el operador $
    8 minutos
  26. 26
    Slots (parte 1 de 2)
    5 minutos
  27. 27
    Slots (parte 2 de 2)
    7 minutos
  28. 28
    Directivas svelte:window, svelte:head, svelte:body
    4 minutos
  29. 29
    Actualizar de Rollbar a Vite 3
    11 minutos
  30. 30
    Exportar a Web Components
    10 minutos
  31. 31
    Integrar TypeScript, SCSS, PostCSS...
    8 minutos
  32. 32
    Hasta aquí (por ahora)
    3 minutos
  33. 33
    Lo que se viene con Svelte 5
    13 minutos