Technische Umsetzung
Die App ist eine native iOS-App, gebaut mit SwiftUI und Swift 6. Da die Erfahrung zeigt, dass ein Grossteil der Jugendlichen, die uns besuchen, auf iOS unterwegs sind, haben wir uns in einem ersten Schritt auf iOS konzentriert. Eine Android-Version ist für die Zukunft angedacht. Für die Projektverwaltung nutzen wir Tuist statt direkt in Xcode zu arbeiten, was die Projektstruktur deutlich wartbarer macht. Lokalisierungen kommen über Localise.biz rein, Texte werden also nie direkt im Code geändert, sondern immer über das Web-Interface gepflegt.
Eine der grösseren Herausforderungen in der Umsetzung war die Funktion zum Zuschneiden der Fotos. iOS bringt von Haus aus keinen Cropper mit, der gleichzeitig das richtige Seitenverhältnis erzwingt, freies Zoomen erlaubt und sich an unsere Designsprache anpassen lässt. Wir haben deshalb die Open-Source-Bibliothek SwiftyCrop integriert und sie mit unserer Brand-Palette konfiguriert. Das Ergebnis: Schüler*innen sehen beim Zuschnitt genau, wie die Skizze später auf dem Bildschirm aussehen wird.
Damit die App sich auch auf älteren Geräten flüssig anfühlt, haben wir viel Arbeit in die Bild-Pipeline gesteckt. Jedes Bild wird in zwei Versionen gespeichert, dem Original und einer zugeschnittenen Version, damit man später erneut zuschneiden kann, ohne an Qualität zu verlieren. Beim Laden erscheint zuerst eine Thumbnail-Version, dann schärft das Bild nach. Der Play Mode lädt das nächste Bild bereits im Hintergrund, bevor man überhaupt darauf tippt.
Die gesamte App funktioniert offline. Keine Accounts, keine Server, keine Datensammlung, keine Abhängigkeiten. Die erstellten Projekte bleiben lokal auf dem Gerät gesichert.