git cloneしてもいいし、degitでもいいです
npx degit loop0429/svelte-session {project_name}
cd {project_name}
yarn install
yarn dev // 開発 http://localhost:5000
yarn build // 本番用ビルド
書かれてないものはテキトウに読んで調べてください。
src/App.svelte: メインです。src/routes/*.svelte: 各ページのコンポーネントです。src/constants/の{同一ファイル}.jsに記述して、レイアウトに関する記述がメインです。src/constants/page.js: svelte-spa-router用のルーティング設定です。src/components/page/Page.svelte: src/routes/*.svelteのコンテンツを読み込んでいますFadePage.svelte: ページ切り替えしたときにFadeの効果が付与されます。上記Page.svelteをwrapしています。ScalePage.svelte: ページ切り替えしたときにScaleの効果が付与されます。上記Page.svelteをwrapしています。build時、PurgeCssで使用されてないTailwind CSSを除外する設定にしていますが、src/components/*内で使用してるクラスが除外されてしまっています。svelte-spa-routerのせいかもしれない。svelte/storeを使用したstore.jsをimportするとeslintで怒られたので、各ページで/* eslint-disable import/first */を追記してます。transitionを使用する際に、transition:fadeのようにすると、inとoutの両方が適用されます。unmountされる際(今回の場合、ページ切り替え時)に、outのtransitionが実行されます。in:fadeのような記述の仕方をしています。