Skip to content

Commit

Permalink
docs: add details on use of Svelte v2 / Sapper
Browse files Browse the repository at this point in the history
nolanlawson authored Nov 21, 2022
1 parent 7f86a94 commit fdec7b2
Showing 1 changed file with 9 additions and 1 deletion.
10 changes: 9 additions & 1 deletion docs/Architecture.md
Original file line number Diff line number Diff line change
@@ -5,9 +5,17 @@ Basically think of it as a "lay of the land" as well as "weird unusual stuff tha

## Overview

Pinafore uses [SvelteJS](https://svelte.technology) and [SapperJS](https://sapper.svelte.technology). Most of it is a fairly typical Svelte/Sapper project, but there
Pinafore uses [SvelteJS](https://svelte.technology) v2 and [SapperJS](https://sapper.svelte.technology). Most of it is a fairly typical Svelte/Sapper project, but there
are some quirks, which are described below. This list of quirks is non-exhaustive.

## Why Svelte v2 / Sapper ?

There is [no upgrade path from Svelte v2 to v3](https://github.com/sveltejs/svelte/issues/2462). Doing so would require manually migrating every component over. And in the end, it would probably not change the UX (user experience) of Pinafore – only the DX (developer experience).

Similarly, [Sapper would need to be migrated to SvelteKit](https://kit.svelte.dev/docs/migrating). Since Pinafore generates static files, there is probably not much benefit in moving from Sapper to SvelteKit.

For this reason, Pinafore has been stuck on Svelte v2 and Sapper for a long time. Migrating it is not something I've considered. The [v2 Svelte docs](https://v2.svelte.dev/) are still online, and share many similarities with Svelte v3.

## Prebuild process

The `template.html` is itself templated. The "template template" has some inline scripts, CSS, and SVGs

0 comments on commit fdec7b2

Please sign in to comment.