Today marks 4 years since shipping the first release of the rewrite of the Lyft app in Swift. I figured some stats would be cool to share.
First off, we now have 2 apps! The separation of rider and driver into separate has helped us scale both in engineering and team structure.
We have about 7200 .swift files (none longer than 400 lines and most way shorter) and 380k lines of Swift. About 130k of that is shared between rider and driver.
The codebase is extremely modular, with 478 modules and 971 Xcode targets (including test targets and resource bundles)
To manage this many modules/targets we use bazel + XcodeGen so we can generate an Xcode project for the entire dependency tree or a subset of that tree
When the entire tree for both apps is generated into 1 Xcode project, the .pbxproj file is 750k lines or 41MB
Speaking of generation, we also generate all our APIs/models for server/client consistency, as well as strongly typed assets, colors, localizable strings, and storyboards
We have 197 storyboards (+ 470 XIBs) capturing 791 view controllers. (We use child view controllers pretty extensively.)
The codebase counts almost 50k commits, the .git folder is 1.1GB. Fun fact: 113 lines of code are still from the initial commit.
Missing some Tweet in this thread? You can try to force a refresh.

Enjoying this thread?

Keep Current with Scott Berrevoets

Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

Twitter may remove this content at anytime, convert it as a PDF, save and print for later use!

Try unrolling a thread yourself!

how to unroll video

1) Follow Thread Reader App on Twitter so you can easily mention us!

2) Go to a Twitter thread (series of Tweets by the same owner) and mention us with a keyword "unroll" @threadreaderapp unroll

You can practice here first or read more on our help page!

Follow Us on Twitter!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just three indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3.00/month or $30.00/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!