Skip to content
Daniel Adu-Gyan edited this page Mar 7, 2024 · 12 revisions

Welcome to the wiki! These pages contain more in-depth information about how to contribute to the project and some information about the design philosophy that shapes it.

FAQ

Why is there an (app) folder?

In SvelteKit, a folder with a name wrapped in parentheses is a group. It is used to group different routes to have different layouts. In our case it's used to remove the navbar and footer on the onboarding page (found in (app)/onboarding). You can read more about it in the SvelteKit docs

Why does my Markdown content shift around when the page loads?

If you wrap Markdown content with a link (an anchor tag), there's a good chance that this behaviour will occur. This is because nested <a> tags are prohibited in HTML. You can solve the issue by wrapping your Markdown content with a button instead that programmatically navigates.

How do I setup .env.local?

Copy .env into .env.local

  • Override DATABASE_URL if you do not use the same names and ports as below
  • Insert KEYCLOAK_CLIENT_SECRET (secret)
  • Insert MINIO_ROOT_USER and MINIO_ROOT_PASSWORD

How do I create a local database?

We use PostgreSQL 14. Use whatever method you like to do this, below is an example script you can run (all you need is docker) to setup a database called "dwww_web" on port 5432.

docker compose up

What is MinIO file storage?

This project uses the minio sandbox instance hosted on our servers, contact an admin to receive an access token

How do I build the project?

To create a production version of your app:

pnpm build

You can preview the production build with pnpm preview.

To deploy your app, you may need to install an adapter for your target environment.