Project structure

This page provides additional information about how this website is build and what each file does. You do not have to understand everything mentioned here yet, we will introduce the important concepts during the exercises as well. However, it is important to give you some context early on.

This website is build using SvelteKit, Svelte, and Bootstrap. We provide a short description of these frameworks, but also check out their documentation if something is not clear. SvelteKit is a modern website framework based upon Svelte. Essentially, you can think of Svelte as a tool for building an interactive web-page and SvelteKit as a tool for building an entire website out of those pages. Bootstrap is a collection of styling and javascript functionality for common website elements that make it easy to get a clean look quickly. If you see us using CSS classes that are not defined in the Svelte component, then they are probably from bootstrap. You can find what they do in their documentation.

The structure

The project contains quite a few configuration files in the root folder. You should not touch these files, but we will briefly explain what each file is for:

In addition, two folders will be generated when you are working on the project. node_modules contains the javascript dependencies and .svelte-kit contains internal files of SvelteKit. If you ever run into an issue where SvelteKit is giving errors about files you have moved, you can solve that by removing the .svelte-kit folder and running $: npm run build.

Finally, the two folders that matter: static and src. static contains the files that should be accesible on the website directly, such as the favicon that is shown in the browser's tab. Use this folder if you want to be able to acces a file (f.i. my_file.json) within a web-page. Put the file in the static folder and load it from the URL /my_file.json.

The src folder contains all the files that make up the website.