La documentación de Svelte establece que:
Svelte convierte su aplicación en JavaScript ideal en el momento de la compilación, en lugar de interpretar el código de su aplicación en el momento de la ejecución.
...
Es similar a los marcos de JavaScript como React y Vue...
En el contexto de lo anterior mi pregunta es:
¿Svelte se limita a crear aplicaciones de una sola página (SPA) y se puede usar para crear aplicaciones de varias páginas (MPA)?
No. Svelte es una forma de construir componentes. Svelte se compila en clases JS estándar para que pueda incluirlo fácilmente como un componente pequeño que hace algo específico en una página o como un componente que actúa como una página completa en una estructura MPA (ambos iniciados en tiempo de ejecución).
No con Svelte directamente (ya que solo produce componentes), pero es posible con SvelteKit. Sinceramente, pensé que SvelteKit era un marco SPA (porque se comporta como uno), pero aparentemente crea puntos de entrada html reales para todas sus rutas. Después de la carga de la página inicial, simplemente cambia las partes de la página web que necesitan ser actualizadas y no se cargan más páginas completas, por lo tanto, la velocidad de navegación es rápida y también obtiene los beneficios de las MPA renderizadas por el servidor.
Como ya ha notado, Svelte es maravilloso porque se compila en Vanilla JS. Por lo tanto, puede usar Svelte compilado para reemplazar incluso las páginas estándar existentes. Aunque no lo he probado, me imagino que funciona con Express si quieres usarlo. Como señaló cascading-jox, SvelteKit es un método integrado ordenado para enrutar sus páginas. La documentación parece hacer que se vea bastante similar al enrutamiento de Next.js.