Emerge Tools Profile picture
Emerge helps teams like @DoorDash, @Spotify, @Duolingo, @Bumble and @Square build better mobile apps. Join the future of mobile development today 🚀
Erin Hima Profile picture 1 subscribed
Mar 25 10 tweets 4 min read
These are the best 🥲... breaking down why @LinkedIn iOS is half a GB

Here's a top level view of the latest version of LinkedIn

300 MB for just dynamically linked frameworks & Plugins is...a lot. In fact, just the Dylibs & Plugins today are bigger than the entire app was back in November 2022 🫠
Emerge X-Ray of LinkedIn App showing 187.5 MB of Dylibs, 109.9 MB of Plugins, and a 110.6 MB main app binary
Size tracker of LinkedIn iOS app showing the app was 292.9 MB in November 2022 and is now ~450 MB
Mar 8 9 tweets 4 min read
Finding accessibility issues in an app is an incredibly manual task that can take hours depending on the size. Which seems like a perfect place for ✨AI ✨

🧵Surfacing accessibility issues in the @Drizly app w/ AI 🧠 A quick background - our Snapshots product turns Previews into snapshots. A recent feature gives the ability to use AccessibilitySnapshot w/ one line

You don't need to write test code to get snapshot tests or to snapshot VoiceOver elements
Code snippet showing `emergeAccessibility(true)` on a PreviewProvider
Drizly Preview with annotations of VO elements
May 23, 2023 22 tweets 8 min read
Last week we wrote how @peacock reduced app size & app launch after moving from RN to native

By beautiful chance, another streaming app did the same this week. Did the same effects occur? Well, yes, no & it depends

🧵 Breaking down HBO's new Max app
So, HBO Max is now Max. New app, new bundle id, new logo, & entirely new codebase. Let's start by comparing the iOS size and architecture

iOS
HBO Max (old app): v53.20.1 - 60.4 MB install size
Max (new app): v1.0.1 - 108.8 MB

The new iOS app is 48.4 MB (~80%) bigger
May 22, 2023 7 tweets 3 min read
How did the @Twitter iOS app change over the last 6 months? Why did the latest release of Google Translate Android reduce app size by 1/3rd?

We try to make these questions easier to answer, which is why we're very excited about our newest feature, AI summaries of build diffs Jumping right in - Twitter v9.59.1 vs. v9.34.6 (iOS)

Overall size decreased by 34 MB, but how quickly can we identify what changed? Image
May 18, 2023 8 tweets 4 min read
So, what does the @OpenAI ChatGPT iOS app look like under the hood? Well we took a look at a decrypted build

🧵 How the ChatGPT iOS app is made Overall install size is 41.9 MB and has a fairly simple structure. Here's our X-Ray treemap Treemap of ChatGPT iOS app....
May 17, 2023 12 tweets 4 min read
What happens to an app's performance when it goes from react native -> native?

The @peacock app just made the switch on iOS & Android and had a significant change in size and startup time

🧵 Performance impact of switching to native A quick primer

RN let's you create mobile apps for Android and iOS using js & react. 1 codebase, 2 apps. It has an active community & there are certainly reasons you'd want to use RN

That said, if performance is important, native is going to be better
Jan 17, 2023 6 tweets 5 min read
Notable iOS app size changes (install size) over the last week

📈 Increases
@BestBuy: +26.3 MB
@indeedjobs: +26.2 MB
@github: +10.6 MB

📉 Decreases
@Shopify: -24.5 MB
@Reddit: -24.0 MB
@googlechrome: -19.9 MB

🧵 How Best Buy could've avoided the increase altogether Best Buy v22.12.10 (previous)
Install Size: 148.6 MB

Best Buy v23.1.10 (latest)
Install Size: 174.9 MB

The difference in size between the two is due to the latest release being built with Xcode 14
Jan 12, 2023 9 tweets 4 min read
The @CandyCrushSaga iOS app (v 1.243.0) is made up of over 22k files

Over 90% of the files are under 4 KB

🧵 Why having many small files = size bloat
+ how Candy Crush could cut it's install size by almost 20% The candy crush iOS app has an install size of 264.8 MB

55.5 MB of the app is "levels", which are made up of .txt files like `episode190Level3.txt` that define a level in JSON format Emerge X-ray graph of candy...Emerge X-ray showing many l...
Jan 10, 2023 9 tweets 3 min read
Inspired by this @Kelset tweet, let's take a look at how the @discord iOS app increased by 54.2 MB (36%) install size in version 158.0

Discord Version 157.0 measured at 148.7 MB install size.

More than a third of the app was from main.jsbundle (RN) Image
Jan 4, 2023 21 tweets 8 min read
The largest iOS apps all have a common problem

Localization files account for
23% (74 MB) of @Uber
23% (30 MB) of @WhatsApp
17% (53 MB) of @MicrosoftTeams
17% (50 MB) of Nike Run Club

🧵 Here's how Airbnb reduced the size of localizations by 82% with the help of Emerge First, a quick primer on localization files

Localization files are used to store translations of text in your app. Each file is a list of key-value pairs for text that need translating. These files exist for every language your app supports Example of key value pairs ...