1 000
videos/month
800 M
views/month 10 M
followers
Slide 7
Slide 7 text
Team
CTO
Lead Dev
Mobile
Lead Dev
Web
DevOps
Dev iOS
Contractor
Dev Web
Contractor
Dev Web
Contractor
Slide 8
Slide 8 text
OpenAPI
backend
back office iOS brut.media …
API contract
Slide 9
Slide 9 text
SwagGen
SwiftLint
Slide 10
Slide 10 text
No content
Slide 11
Slide 11 text
master dev
→ Pull requests must be rebased on dev before merging
→ Merge on the master branch are done using a script
to release a new build
Git strategy
Slide 12
Slide 12 text
( → Merge on master generates a TestFlight build
→ Build number is Travis CI job number
Version number is updated manually
→ Generates a changelog with merge commits
→ Uploads symbols to Sentry
Release process
→ Native solution
→ UI tool to create the
App model layer
→ Manage caching for us
→ High learning curve
→ Black box with
potential pitfalls
+ -
Core Data
Slide 18
Slide 18 text
→ Open-source error reporting tool
→ Privacy-compatible alternative to Fabric
→ Flexible
→ Covers all our needs
Slide 19
Slide 19 text
→ Lokalise to update and manage the localization strings
→ fastlane lane to download the strings/stringsdict files
and install them in the project
→ SwiftGen to have strongly-typed identifiers
"'
Localization
%
Slide 20
Slide 20 text
Bindings
?
Slide 21
Slide 21 text
SwiftGen
Bindings
?
Slide 22
Slide 22 text
SwiftGen SwagGen
Bindings
?
Slide 23
Slide 23 text
SwiftGen SwagGen
Bindings
✍ *
Slide 24
Slide 24 text
SwiftGen SwagGen
Bindings
✍ !
Slide 25
Slide 25 text
SwiftGen SwagGen
Bindings
✍ !
Slide 26
Slide 26 text
SwiftGen SwagGen
Bindings
✍ !
Slide 27
Slide 27 text
SwiftGen SwagGen
Bindings
✍ !
Slide 28
Slide 28 text
SwiftGen SwagGen
Bindings
✍ !
Slide 29
Slide 29 text
SwiftGen SwagGen
Bindings
✍ +
Slide 30
Slide 30 text
API
Models
API
EndPoints
SwagGen
OpenAPI
file
CoreData
Model
SwiftGen
CoreData
Entities
+
Sourcery
Annotations
API to CoreData
Bindings
Sourcery
API & model
bindings
Slide 31
Slide 31 text
No content
Slide 32
Slide 32 text
Product
Slide 33
Slide 33 text
Create a label
with a red background
that follows text
Now open-source:
github.com/brutmedia/labelrouge