SvelteKit & Svelte's simplicity allow the user to modify SveltePress to fit their needs with little to no effort while taking advantage of the incredible performance of both of them.
Apart from all the super powers inherited from Svelte & SvelteKit, the main point of SveltePress is to allow less knowledgeable users to create and publish content. To achieve that, SveltePress uses a filesystem-based structure.
For example the following structure...
pages └── cooking ├── allergies.md ├── main_dish │ ├── pizza.md │ └── spaghetti.md └── readme.md
will generate the following sidebar:
- Cooking - Allergies - Main Dish - Pizza - Spaghetti
As shown above, the sidebar is sorted alphabetically (or last modified) and categorized based on the folder structure. However, both category and post names do not only depend on the filename. This allows you to eg. have the following file names:
01 - cream.md 02 - choco.md
but have them displayed as:
- Ice Cream - Chocolate
on the sidebar. More on that later.
In production mode, all markdown files, get indexed for max performance while also enabling the search function powered by FlexSearch.
Deploying is handled by SvelteKit, which allows you to choose from a plethora of adapters including node, Netlify, Vercel...
At the moment using the
static adapter is not possible, as the dynamic routes won't get rendered.
SveltePress wouldn't exist without the following: