Little late to the party, but starting with my #shipaton#indie#app idea: simple but effective screen time app - DropIt.
Thanks @RevenueCat for making us stay up late building apps π
Announcing Swift Async Algorithms, a new open source package providing asynchronous functions for zip(), merge(), debounce(), and more. https://t.co/qprF2JLNH8
π Stay focused while working on multiple projects, plan out your releases and schedules tasks with LaunchBuddy.
π Get it for free: https://t.co/MKdrCnXudt
LaunchBuddy is out now! Retweets & Reviews are highly appreciated. β€οΈ
Calling all #Swift devs! Be part of the next generation in code editing. This community-driven, open source, #macOS-native project needs awesome contributors like you. Let's make this happen together! πͺπ»
https://t.co/FYryny8ouU
Today, Swift is taking a big step forward in growing the community by open sourcing https://t.co/1HnUB5gsDA and announcing a new workgroup to drive it. Read more: https://t.co/YkgDm5Cr9h
I've been building apps since 2014 and have made a TON of mistakes along the way. Let me save you some time and help you avoid a lot of pain and frustration, here are my 50 tips for making it as a solo developer
Want a fancier navigationTitle in #SwiftUI?
You can add a ToolbarItem with a placement of .navigationBarLeading or .principal instead, which lets you fully customise what's shown.
Tip: when expanding an Xcode XIP archive, use the command line (xip --expand) rather than Archive Utility. Itβs at least 25% fasterβsometimes even twice as fast, depending on the circumstances. They both call into the Bom API, so I profiled both to see why thereβs a difference.
Not quite done with Swift articles for 2021 π
This week's article is about performing async actions within SwiftUI views, and shows an example of building an async button complete with a loading spinner, automatic disabling, dynamic options, and more π
https://t.co/8J2yDI6220
Unit testing asynchronous code typically involves protocols, mocking types, and more. But does it really have to be that way? What if we could use the power of async/await to be able to simply inject our async dependencies as functions? Let's explore! π
https://t.co/GJpArNoAwB