Did you know that a few popular iOS apps are open-source? 🤨


Hi 👋

This week I want to share with you a clever way to improve your skills on challenging topics, like designing the architecture of a large codebase or implementing high-quality user interfaces.

But first, I have a big thank you for the sponsor of this email: Runway


Advertisement

Runway is the only mobile release management platform.
Mobile releases don’t have to be duct-taped processes that you dread tackling.

Stop experiencing death by a thousand branch cuts. Use Runway instead.

👉 Learn how we can help 👈


Sponsors like Runway really help me grow my content creation, so if you have time please make sure to check out their survey: it’s a direct support to my content creation ☺️


You might have been told that: “before you can write good code, you first need to have read a lot of good code”.

But where can you read good code? It’s not as easy as it sounds!

Most popular iOS apps, both from Apple and 3rd-party developers, rely on private codebases that can only accessed by their development team.

But did you know that a few popular iOS apps are open-source and actually have their full source code available on GitHub?

For an iOS developer, this is extremely valuable, because it allows us to see and understand how popular real world apps have been implemented!

So let me share with you a few examples of popular and open-source iOS apps 👇

#01 – ProtonMail

ProtonMail is a popular email client for encrypted emails.

As such, its codebase can be a great source of inspiration if you need to implement secure data transfer and persistence, or if you need to implement a UI that lets users compose complex messages.

#02 – Signal

Signal is quite similar to ProtonMail: it also implements secure messaging, but this time for instant messaging.

This means that if you need to implement a chat-like feature in your app, the source code of Signal can be a great source inspiration.

(I also recall a colleague that looked at the code of Signal to see how the app was handling user permissions for when the user wants to add a picture from the camera roll)

#03 – VLC

VLC is a super popular cross-platform and open-source media player.

So if you’re working on an app that needs to handle files that are quite large and/or stored on the local network, VLC can probably be a very good source of inspiration!

Bonus – Kickstarter

You’re probably familiar with Kickstarter: a platform to crowdfund projects.

But the iOS Kickstarter app is very interesting for a reason that’s completely unrelated to the features it offers to its users.

You see, this app made the choice to rely very heavily on a functional programming approach, which is supported through the introduction of several custom operators.

If you’re curious to see what such a codebase might look like at scale, the code of the iOS Kickstarter app is really worth looking into!

(Fun fact, Stephen Celis from the popular Point-Free series of videos was a developer on the iOS Kickstarter app, and you can see that some patterns described in his videos are actually implemented in the app!)


I’ve shared with you 4 examples of popular open-source iOS apps, but there are actually many more of them!

You can find detailed lists of open-source iOS apps here and here.


That’s all for this email, thanks for reading it!

If you’ve enjoyed it, feel free to forward it
to your friends and colleagues 🙌

I wish you an amazing week!

❤️

Previous
Previous

Bad practice: not using a ButtonStyle

Next
Next

How to decode dates in ISO 8601 format