← Work
01live

PSV

A club app that is also a game

PSV — in-game
PSVUnity
Role
Senior Software Developer
Studio
Azerion
Year
2024 — now
Engine
Unity
Platform
iOS · Android

See it on App Store

The official app for PSV Eindhoven — a hybrid product where a football club's companion app and a set of interactive mini-games live inside the same Unity build.

The brief

A hybrid app/game is two products fighting for the same runtime. The app half wants native navigation, fast cold starts and store-compliant behaviour on two platforms; the game half wants a frame budget and a scene graph. Most of the work is keeping the seam between them invisible, and keeping releases boring.

The build

3 notes from inside the codebase

  1. 01

    A custom MVC for something that is half app, half game

    The product runs on an MVC pattern implemented from scratch rather than an off-the-shelf framework, so app screens and interactive mini-games share one architecture instead of two. Third-party libraries — UniTask for async flow, DOTween for motion, Json.NET for payloads — sit behind that structure rather than leaking through it.

  2. 02

    Native plugins where Unity stops

    The parts of a phone Unity doesn't reach are bridged with plugins written directly in Java and Swift, so platform behaviour stays native on each side while the game layer keeps a single C# surface to call into.

  3. 03

    Cloud builds and two storefronts

    Distribution runs on Unity Cloud Build, with submissions and updates managed across Google Play Console and App Store Connect. Version control is branch-per-task — release, feature and bugfix — so what ships is always a deliberate set of changes.

Key facts

Custom MVC
Pattern
Java + Swift
Native
Unity Cloud
Builds
iOS + Android
Stores

Stack

  • Unity
  • C#
  • Java
  • Swift
  • UniTask
  • DOTween
  • Json.NET
  • Unity Cloud Build