Developer Blog HandySwiftUI Styles: Enhancing SwiftUI's Standard Views From attention-grabbing pulsating buttons and versatile label layouts to cross-platform checkboxes and vertical form styles - discover the SwiftUI styles that bring polish and consistency to your apps. These battle-tested styles power the UI of 10 production apps and counting.
Developer Blog HandySwiftUI Extensions: Making SwiftUI Development More Convenient Discover powerful SwiftUI extensions for clean optional bindings, intuitive color management, XML-style text formatting, and more. These battle-tested utilities will help you write more elegant SwiftUI code while reducing boilerplate in your apps.
Developer Blog HandySwiftUI View Modifiers: Streamlining Your SwiftUI Code From smart color contrast and streamlined error handling to simplified deletion flows and platform-specific styling - discover the SwiftUI modifiers that eliminate common boilerplate code and help create more maintainable apps.
Developer Blog HandySwiftUI New Types: Essential Views and Types for SwiftUI Development From platform-specific values without #if checks to sophisticated selection controls and async state management - discover the essential SwiftUI types that helped ship apps faster. These battle-tested views and types fill common gaps in SwiftUI development.
Developer Blog Test your Swift Packages Linux Compatibility on Mac Ever wondered how to test your Swift code’s compatibility with Linux from your Mac without diving into Docker? In this article, I’ll share a simple command that makes the process effortless!
Developer Blog Introducing LinksKit: Simplifying App Links for Swift Developers Tired of repeatedly implementing essential links in your apps? LinksKit is the Swift package that handles it all—from legal requirements to cross-promotion—saving you time and boosting your app's visibility.
Developer Blog Why I Stopped Building for visionOS (And What Could Bring Me Back) Explore the limitations hindering the Vision Pro from reaching its full potential. This article highlights the missing APIs essential for transforming it into a true mixed-reality platform and discusses what needs to change for that to happen.
Developer Blog Guest Post: Why I Chose FreemiumKit Over RevenueCat for My App Struggling with in-app subscription integration? Discover how FreemiumKit transformed my development process, helping me overcome challenges with RevenueCat and fast-tracking my app's launch.
Indie Blog Reacting to Pricing Backlash: Lessons Learned My take on how to find the right pricing and how I reacted to a user calling my app "overpriced". Learn from my mistakes and avoid bad reviews.
Developer Blog My Top 10 Wishes for WWDC24 From a SportsKit API and .zoom modifier in SwiftUI, over improved SwiftData and source control in Xcode, to my biggest pain points in tvOS and visionOS, and much more! Blending long-standing requests with fresh ideas.
Developer Blog Introducing HandySwift 4.0 Investing time in Open Source again: Complete revamp of HandySwift with vastly improved documentation and lots of added handy features extracted from my apps. Read on to learn which helpers I use most often!
Developer Blog Migrating my SwiftUI App to VisionOS in 2 Hours How I migrated my SwiftUI app CrossCraft to support visionOS for the Day 1 Release of the Apple Vision Pro. It took effectively about 2 hours in total, this article summarizes my key learnings along the way.
Developer Blog Learnings from Analyzing 20 Successful Mobile Paywalls Dive into how FreemiumKit, a user-friendly paywall open-source library, simplifies the creation of successful paywalls and streamlines A/B testing. Its highly customizable UI components are based on my deep analysis of common paywall designs.
Developer Blog The Missing String Catalogs FAQ for Localization in Xcode 15 Discover the game-changing implications of Apple's new feature, String Catalogs, which replaces traditional localization files and streamlines the localization process. From automatic key extraction to safety checks, find out why developers should be excited about this powerful tool in Xcode 15.
Developer Blog Introducing ReviewKit: Improve your App Store Rating with Ease ReviewKit: Get app reviews from satisfied users at the right time. Say goodbye to intrusive prompts and optimize your app review process.
Developer Blog Taking over WWDC Notes & Envisioning its Future Evolving the Open-Source Project: Join the Community effort and shape the Future of how we discover and learn from WWDC Sessions effectively!
Developer Blog Window Management with SwiftUI 4 Learnings from modernizing the window handling of my Mac app after upgrading to SwiftUI 4. Explaining `\.openWindow`, `.windowResizability` & more.
Developer Blog My Top 5 Wishes for WWDC 2023 WWDC is only weeks away, so it's time for me to update my wishlist. One wish came true last year, how many will it be in 2023?
Developer Blog Preparing My App for Swift 6 How to enable Swift 6 mode for your Xcode projects and for your SwiftPM modules today. And what the migration experience is like.
Developer Blog Binding: Equatable vs EquatableBinding How I fixed a subtle bug in SwiftUI Pickers in my app by using a Property Wrapper instead of conforming Binding to Equatable.
Developer Blog Migrating to The Composable Architecture (TCA) 1.0 Sharing my learnings and my code structure after migrating my app to the vastly modernized APIs of TCA 1.0.
Developer Blog 2,000 Imports: Organizing my Apps' SwiftPM modules How to organize your apps Swift modules for clarity & convenience using a hidden (unofficial) Swift feature. A practical solution for small to medium-sized apps.
Developer Blog Hardware Requirements for iOS Development (December 2024) From the cheapest viable option to the best value Mac for iOS Developers.
Developer Blog Featured Introducing RemafoX: Easy App Localization Say hello to RemafoX, the app on the mission to simplify developer life by providing new workflows for localization when working with Xcode.
Developer Blog Making the Most of WWDC 2022 How to enjoy both Keynotes with other developers (remotely) and how to maximize your learnings throughout the week. If you can invest the time