Alexander Bocken cdc744282c
Some checks failed
CI / update (push) Failing after 4s
Fix MongoDB connection issue in production builds
Prevent database disconnection in dbDisconnect() to avoid "Client must be connected" errors in production. The connection pool handles cleanup automatically.

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-09-12 15:02:24 +02:00
2023-06-24 15:35:36 +02:00
2023-06-24 15:35:36 +02:00
2023-06-24 15:33:41 +02:00
2024-02-18 15:23:14 +01:00
2023-06-24 15:35:36 +02:00
2025-09-04 11:52:28 +02:00

Personal Homepage

My own homepage, bocken.org, built with svelte-kit.

TODO

General

  • Admin user management -> move to authentik via oIDC
    • login to authentik
    • only let rezepte_users edit recipes -> currently only letting them log in, should be changed
    • get user info from authentik (more than email and name)
    • upload pfp
  • upload/change pfp
  • registration only with minimal permissions
  • logout without /logout page
  • preferences page
  • change password
  • css dark mode @media (prefers-color-scheme: dark) {}
  • dark mode toggle

Rezepte

  • Do not list recipes that are all-year as "seasonal"
  • nutrition facts
  • verify randomize arrays based on day
  • notes for next time
  • refactor, like, a lot
  • expose json-ld for recipes https://json-ld.org/ https://schema.org/Recipe
  • reference other recipes in recipe
    • add a link to the recipe
    • add ingredients to the ingredients list
    • include steps?
  • add favoriting ability when logged in
    • favorite button on recipe
    • store favorites in DB -> add to user object
    • favorite API endpoint (requires auth of user)
      • set
      • retrieve
    • favorite page/MediaScroller
  • graceful degradation for JS-less browsers
    • use js-only class with display:none and remove it with JS
    • disable search -> use form action instead on submit?
    • do not blur images without js
    • correct Recipe Card rendering

Glaube

  • just keep it md rendered
  • Google Speech to Text API integration?
  • Gebete

Outside of this sveltekit project but planned to run on the server as well

  • create LDAP and OpenID

E-Mail

  • emailwiz setup
  • fail2ban
  • LDAP?

Dendrite

  • setup dendrite
  • Connect to LDAP/OIDC (waiting on upstream)
  • Serve some web-frontend -> Just element?

Gitea

  • consistent theming
  • OpenID Connect
  • sane landing page

Jellyfin

  • connect to LDAP
  • consitent theming

Webtrees

  • setup Oauth2proxy -> not necessary, authentik has proxy integrated
  • connect to OIDC using Oauth2proxy (using authentik)
  • consistent theming
  • auto-login if not logged in

Jitsi

  • consistent theming
  • move away from docker
  • find a way to improve max video quality without jitsi becoming unreliable

Searx

  • investigate SearxNG as more reliable alternative
  • consistent theming

Photoprism

  • consistent theming
  • OIDC integration (waiting on upstream)

Nextcloud

  • consistent theming
  • collabora integration

Transmission

  • move behind authentik
Description
My personal website built to learn SvelteKit. The largest part is the Recipes subsection.
https://bocken.org
Readme AGPL-3.0 80 MiB
Languages
Svelte 75.8%
TypeScript 22%
CSS 1.9%
JavaScript 0.3%