The official app for the Queersicht Film Festival Bern

I developed the Queersicht App from the ground up to give festival visitors the best possible experience. As a personal companion for the largest queer film festival in Switzerland, the app brings the entire festival programme directly to your smartphone. What started as an idea became a comprehensive project that challenged me both technically and creatively.  

The Vision

My goal was not simply to build another festival app, but to create a tool that reflects the diversity, creativity, and spirit of the queer community. The app was designed to be not only functional but also visually engaging and a real experience in itself. 

What I Built

Personalised Schedule with Smart Sync

I developed an advanced favourites system that allows users to build their own personalised festival schedule. The challenge was to structure the data so that films with multiple screenings are handled correctly. The app shows upcoming screenings in chronological order — so nothing gets missed.  

Full Film Programme with Dynamic API Integration

All films at the festival are available with detailed information, trailers, summaries, and screening times. I built a REST API connection that checks for updates in the background every hour. One particular challenge was image management — I implemented a multi-stage caching system that loads images in different sizes and significantly improves performance.  

Events & Special Screenings

The app keeps users updated on all accompanying events, parties, discussions, and special screenings. Here I had to design a flexible data structure that can represent both films and events in a unified way.  

Offline-First Architecture — A Technical Challenge

A major focus was offline functionality. This was one of the biggest technical challenges: the app had to be fully usable without an internet connection, as many cinemas have poor reception. I built a local storage system with persistent JSON storage that keeps all data available. Automatic background updates keep the programme current without interrupting the user.  

Multilingual Support with Real-Time Language Switching

I developed the app fully bilingual (German/French). The challenge was to make the language change work without restarting the app. I built a custom localisation system that automatically updates all views when the language is changed, including date formatting and dynamic text.  


Technical Highlights & Achievements

Modern SwiftUI Design with Custom Theming

I built the app natively in SwiftUI and implemented a complete theme system. Users can choose between six unique color themes inspired by the Queersicht design. Each theme has its own colour palette and logo variants. All UI components dynamically respond to theme changes.  

Animated Mesh Gradients — A Visual Highlight

One of the standout features is the dynamic animated backgrounds. I used iOS 26’s MeshGradient API and developed custom animation logic that moves gradient points smoothly. The result is a hypnotic, flowing background experience that makes the app visually compelling, running at 60 FPS without draining the battery.  

Queer Crush Mini-Game — From Idea to Implementation

As a special feature, I developed an exclusive match-3 mini-game called Queer Crush. This involved building all game logic — tile matching, gravity systems, cascade effects, scoring, and a local high-score system.  

Smart Review System Following Apple’s Best Practices

The app politely prompts users for a review after 10 uses, with intelligent timing that follows Apple’s best practices. The system remembers if someone has already reviewed and doesn’t repeatedly ask again. I implemented a five-day cooldown if the request is dismissed.  

Performance Optimisation and Memory Management

Through intelligent caching and asynchronous loading, the app runs smoothly even on weaker connections. Images load in three stages (memory cache → disk cache → network), drastically reducing load times. I also developed a system that estimates data size and informs users before large downloads begin.  

Major Challenges

Data Modelling & API Design – Handling complex structures: films, screenings, locations, and favourites all interlinked.  

State Management in SwiftUI – SwiftUI’s reactive model is powerful but tricky; solving issues with view updates required a clean view-model pattern.  

Image Caching & Memory – Managing many film stills without memory issues required multi-stage caching and different image resolutions.  

Offline Synchronisation – Balancing local data and updates without disrupting the user experience.  

Key Achievements

  • Smooth Performance: Runs buttery smooth, even on older iPhones.  
  • Offline-First Works Perfectly: Users can use the app fully without internet after the first data sync.  
  • Visually Impressive: Animated backgrounds and theme system make the app stand out.  
  • Stable Architecture: Clean, documented, and extensible code.  

What I Learned

On the technical side:

  • SwiftUI strengths and limitations
  • Async/await and modern concurrency in Swift
  • Performance profiling and optimisation
  • REST API error handling
  • Local data persistence and caching strategies  

On project management and design:

  • Importance of clear data structures
  • When refactoring is the best choice
  • Prioritising features and managing scope
  • The power of subtle animation and inclusive design principles  

The Future

Developing this app was a labour of love. I didn’t just want to build a functional festival app — I wanted to create a tool that reflects the queer community’s diversity and creativity. Every line of code, every animation, and every detail was crafted with care and passion. The result is an app I’m proud of — not just technically, but also as a contribution to queer culture and community.  

Design:

  • Wie man Ästhetik und Funktionalität vereint
  • Die Kraft von subtilen Animationen
  • Accessibility und inklusive Design-Prinzipien