Project Layout

Learn about the project's structure, and where everything is.

Before attempting to work on the project, it is important to understand its structure.

  • / Configuration files, misc project files.

    • .run/ Intellij Platform run configurations.

    • .vscode/ Recommended Visual Studio Code configurations.

    • build/ Project build output folder.

    • src/ The project's source code.

      • arcticles/ Article source code, in the form of Markdown-based Svelte components.

      • lib/ Project libraries and components, imported using the $lib alias.

        • components/ General-purpose svelte components that don't fit into the subfolders.

          • head/ Component wrapped with <svelte:head> tags, which modify the generated pages' <head>.

          • ui/ Components that make up the site's UI, mostly based on shadcn-svelte.

          • |lucide/file| markdown-layout.svelte Layout file applied to all Markdown-based Svelte components.

        • stores/ Svelte store definitions and their corresponding APIs.

        • types/ TypeScript type definitions.

      • plugins/ Custom Remark and Rehype plugins used by mdsvex.

      • routes/ Svelte API and page routes.

      • app.pcss PostCSS file, containing all the site's styles.

      • tags.yaml YAML file containing descriptions for article tags.

      • navigation.yaml YAML file containing prefix-based navigation trees for articles.

    • static/ Static files to bundle with the project.

      • sponsors/ Images and other assets used by the sponsors segment on the home page.
Created:
Last edited: