★ FEATUREDBuild your BI dashboard from scratch — faster than taming Power BIRead →
Cases

FysioDK Sport — four surfaces, one foundation

FysioDK Sport is FysioDanmark Aalborg's digital nervous system for sports injuries — from the moment a player gets injured on the pitch until the practitioner closes the case. One product. Four surfaces (desktop, mobile PWA, iOS and Android). One codebase.

It was not built as an isolated project. It is built on and with broberg.ai — Christian Broberg's own universe of AI-native platforms and reusable building blocks, which drive everything from artificial intelligence to monitoring, quality assurance and operations. FysioDK Sport is the proof that the universe's philosophy works in the real world: built fast, built right.

The problem: injuries that disappear between systems

Before FysioDK Sport, injury reporting worked the way it still does in most places — phone calls, notes on paper, emails landing in the wrong inbox. An injury that does not reach the right clinic in time is a player waiting needlessly for treatment.

The solution had to be available to everyone — the player on the pitch with a phone, the admin at a desk, the practitioner in the clinic. That means: the same experience, whatever the screen.

One codebase, four surfaces

Technically, FysioDK Sport is 95% web and 5% native — a deliberate architectural decision that pays off every single day:

Surface How
Desktop A fully responsive web interface — admins, practitioners and club managers work directly in the browser
Mobile PWA The same app installed straight from the browser on the phone — no app store needed
iOS A native app in the App Store, with Face ID sign-in and push notifications
Android A native app in Google Play, same functionality, same codebase

The two native apps are not separate products to be maintained one by one. They are a thin native shell (Capacitor) around the same web application — loaded directly from the running production environment, not packaged statically into the app. In practice: when we fix a bug or launch a new feature, it goes live on all four surfaces at once — without waiting for Apple's or Google's review process. Only the rare native-only changes (new permissions, new hardware integrations) require a new app store release.

It is the same principle broberg.ai builds its whole foundation on: design at a higher altitude — solve the problem once, and let the solution carry over to every surface by itself.

From idea to injury report in under two minutes

The journey is built so that none of the parties has to think about the technology:

  1. The player signs in (email, Google or Apple) and is guided through a 5-step flow: choose the body part on a visual figure, describe the injury, add a photo, choose the type of treatment and the clinic.
  2. The system automatically notifies every relevant party at the same time — email to the clinic, push notification to the practitioner, a message to the coach, a receipt to the player. No case disappears into an inbox again.
  3. The practitioner takes over the case and moves it through the statuses Start → Diagnosis → Closed, and both player and club can follow along all the way.
  4. The admin has a full overview — users, clinics, clubs, notices — plus a complete, searchable log of everything that happens in the system.

It all supports GDPR from the ground up: role-based access all the way down into the database, automatic deletion of data after 5 years, and a full audit log of every action.

Built in the broberg.ai universe

FysioDK Sport is not built with hand-rolled one-off solutions for each feature. It draws directly on broberg.ai's shared engines — the same building blocks that run the rest of the universe's platforms:

  • @broberg/ai-sdk — the universe's shared gateway to artificial intelligence — powers three concrete functions in production: a weekly, AI-assisted security review of every dependency, a 100% automatic product changelog written by AI every time a new version ships, and an AI-driven analysis of the system's health. All three deliberately run through Mistral, EU-hosted in Paris — never American or Chinese models — because the platform handles health data, and that is non-negotiable.
  • cardmem — the universe's "AI-native project management that writes its own plans." Every single feature in FysioDK Sport is tracked from idea to finished, verified feature with its own documented plan — nothing is built blind, nothing disappears in a forgotten Slack thread.
  • Lens — cardmem's visual verification engine. Before a change to the interface counts as done, it is screenshot-verified against an approved baseline — so a layout does not quietly break without anyone noticing.
  • Upmetrics — the universe's monitoring tool. Errors are caught in real time, not only in the browser but inside the iOS and Android app's own WebView — every platform and every app version is tracked as its own line, so a problem on iOS never hides behind a general "all is well" status.

That is the core of the broberg.ai way of thinking: proof, not promises. Every layer of FysioDK Sport is built on infrastructure that has already proven itself in production — once, reused everywhere.

The operations cockpit — insight no other clinic system gives you

What really sets FysioDK Sport apart from a typical clinical system is what happens behind the scenes — a fully built-in "Developer Tools" panel that gives complete transparency into whether the system is actually running as it should:

  • Automatic health check of 9 external integrations — database, sign-in, email, Google sign-in, push notifications, AI engine, Discord alerting, Google Play and App Store Connect — run automatically every morning at 8, with the measured response time of each service.
  • Direct connection to App Store Connect — TestFlight builds, distribution status, beta testers and invitations, all visible without leaving the platform.
  • Direct connection to Google Play — status across all four release tracks (Internal testing, Closed testing, Open testing, Production) plus incoming user reviews.
  • Live GitHub integration — every code change and every automated build is visible in real time.
  • Complete audit log — every sign-in, every creation, every deletion, every export. 13 different action types across 10 data categories, updated in real time.
  • Statistics dashboard — cases over time, cases by status, cases by clinic, new users, active users — all available to the right roles at a glance.

It is not decoration. It is the same discipline broberg.ai calls "from author to editor" — the system watches itself, so people can spend their time reacting to what matters instead of hunting for it.

The proof in numbers

FysioDK Sport has been running in production since early 2026 — almost five months of continuous, almost daily development, at the time of writing 591 code changes further along than when it all started.

  • 417 registered users across clubs and clinics
  • 29 injury reports handled through the system, spread across the clinics in Aalborg, Nørresundby and Hasseris
  • All 9 critical integrations monitored and healthy, every single day, automatically
  • Live on the App Store and Google Play — version 1.6.0 just approved by Apple and available to all users now, with the Android version in its final review round at Google

Why it matters

A clinic app that "just works" is not hard to promise. The hard part is building it so it keeps working — across four surfaces, through hundreds of updates, without anyone noticing when something goes wrong, because the system has already noticed by itself.

That is the difference between a project and a platform. FysioDK Sport is built as the latter — with the whole broberg.ai universe's engine room as its foundation, ready to be reused the next time the task calls.

"An injury would sometimes sit in a mailbox for hours before the right clinic saw it. Now it is with us before the player has got up off the pitch. We can follow every single case from the first report to finished treatment — across the clinics in Aalborg, Nørresundby and Hasseris — and that gives players, clubs and ourselves a sense of security we did not have before." — Morten Skjoldager, Partner, FysioDanmark Aalborg

Does your clinic or club need the same foundation underneath it? → Let's talk.

Hi — I'm Aidan