Inspiration
The spark for Buttr came from my lifelong love of cinema and the joy of sharing unforgettable film experiences. I set out to create an elegant space where film lovers can discover, curate, and track the movies that inspire them - an app that feels truly native, intuitive and a delight to use.
What it does
Buttr is a playful, beautifully designed movie watchlist app that helps film lovers:
- Discover what’s trending and what’s coming soon.
- Curate watchlists based on mood, genre or vibe.
- Plan perfect movie nights with an Up Next queue.
- Journal & rate every film you watch for a personal viewing history.
- Personalize your home screen with elegant widgets.
It’s your all-in-one hub to find, track and celebrate the films that inspire you.
How I built it
I crafted Buttr using the latest Apple technologies to deliver a smooth and delightful user experience:
- Architecture: MVVM with clean dependency injection for maintainable code.
- UI: Built entirely with SwiftUI, featuring fluid animations and custom components for a polished, native feel.
- Data & Sync: CloudKit and SwiftData to securely store user's data, eg - watchlists and watch logs, etc
- Platform Target: Specifically designed and optimized for iOS 26 with Liquid Glass interface elements to embrace Apple’s next generation aesthetic.
Challenges I ran into
CloudKit Configuration & Migration: Issue: During development, I realized that without a solid migration plan, future updates could break existing stored data. Solution: I configured CloudKit with growth in mind, designing a robust migration strategy and structuring record types and schemas to scale gracefully so that watchlists and logs will remain intact as the app evolves.
Efficient Poster Loading: Issue: While building the app large movie datasets caused noticeable scrolling lag. Solution: I implemented LazyVGrid with asynchronous image loading and caching using the Nuke library, ensuring smooth poster rendering and efficient memory use even during heavy browsing.
Accomplishments that I'm proud of
Delightful Animations:
- I pushed myself to craft beautiful, fluid animations, transitions and interactive elements throughout the app.
- While this extra polish added development time, the result is an immersive experience that makes every interaction feel smooth and intentional.
- I’m especially proud of the movie poster stack on the home screen and the custom “Up Next” picker, both of which feature subtle, playful animations that bring the app to life.
- Every interaction and element in Buttr is custom-built with care, reflecting the hard work, attention to detail and love poured into creating a truly engaging experience for users.
What I learned
- Building Buttr significantly deepened my skills in SwiftUI and CloudKit.
- I also expanded my knowledge of designing beautiful, user-friendly interfaces, learning how subtle animations, custom components and thoughtful layouts can create a truly immersive and delightful user experience.
What's next for Buttr
Buttr is just the beginning! I plan to add more features in the future to make the app even more immersive and personalized. My goal is to help movie lovers discover, track, and celebrate films in new and exciting ways.
Built With
- cloudkit
- ios
- mobile
- nuke
- revenuecat
- swiftdata
- swiftui
- widgetkit
Log in or sign up for Devpost to join the conversation.