Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Rebranding an iOS app
Search
Adrien Humilière
September 08, 2016
Programming
280
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Rebranding an iOS app
Cocoaheads Paris, September 2016
Adrien Humilière
September 08, 2016
More Decks by Adrien Humilière
See All by Adrien Humilière
Attention to details
adhumi
0
21
Build an iOS app from an iPad
adhumi
0
92
Something about Xcode ^^
adhumi
0
160
Inside Brut.
adhumi
0
150
Localization done bien
adhumi
1
300
Test and distribute an iOS app with Gitlab CI
adhumi
0
410
Pushing Forward iOS Notifications
adhumi
0
220
Good practices for iOS releases
adhumi
0
250
What's new in iOS 9
adhumi
0
390
Other Decks in Programming
See All in Programming
エンジニアと一緒にテストコードの設計と実装を改善した話
mototakatsu
0
260
Even G2とAWSで推しのエージェントを召喚しよう!
har1101
1
140
IBM Bobを活用したレガシーアプリの最新化
oniak3ibm
PRO
1
250
Creating Composable Callables in Contemporary C++
rollbear
0
200
任せる範囲はこう広がった / How the Scope of AI Delegation Has Expanded
nrslib
1
240
PHPだって関数型したい 〜できること、できないこと〜 / fp-in-php
jsoizo
0
170
気圧・高度・GPSを記録&可視化するアプリ「Koudo」を作った話
hjmkth
1
350
1B+ /day規模のログを管理する技術
broadleaf
0
130
決定論的オーケストレーションの設計と実装 / Design and Implementation of Deterministic Orchestration
nrslib
4
1.6k
【SRE NEXT 2026 Lunch Session】一人目専任SREの立ち上げを加速する ― AIと進めたオンボーディングで2分を0.04秒にした話
pkshadeck
PRO
0
2.1k
AIキャラアプリkaiwaの低遅延音声通話基盤をどう作ったか - AWS Gravitonで支える低遅延・低コストAI Agent基盤
mogamit
0
170
継続モナドとリアクティブプログラミング
yukikurage
3
470
Featured
See All Featured
Visualizing Your Data: Incorporating Mongo into Loggly Infrastructure
mongodb
49
10k
Tell your own story through comics
letsgokoyo
1
990
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
31
2.8k
Paper Plane (Part 1)
katiecoart
PRO
0
9.5k
Leveraging LLMs for student feedback in introductory data science courses - posit::conf(2025)
minecr
1
310
Ruling the World: When Life Gets Gamed
codingconduct
0
280
SERP Conf. Vienna - Web Accessibility: Optimizing for Inclusivity and SEO
sarafernandez
2
1.5k
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
500
Ten Tips & Tricks for a 🌱 transition
stuffmc
0
150
A Modern Web Designer's Workflow
chriscoyier
698
190k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
200
Building a Modern Day E-commerce SEO Strategy
aleyda
45
9.1k
Transcript
None
None
Rebranding an iOS app
@
@
Identity change?
Identity change? We are experts.
None
!rue Saint-Georges!
CapitaineTrain.xcodeproj BUNDLE_DISPLAY_NAME=Captain Train [NSURL URLWithString:@"https://www.captaintrain.com/en/terms/"] "ui.ios.shareApp.doYouLikeCapitaineTrain" = "Do you like
Captain Train?"; Captain Train
Unchanged
Product ✅ Team ✅ Support ✅ Process ✅
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
None
Changed
CapitaineTrain.xcodeproj Captain Train iOS application Other projects Tools and partners
…
None
None
None
Partenaires
None
Captain Train Trainline EU
CFBundleDisplayName
None
Capitaine Dev Capitaine Train
Captain Dev Captain Train
Trainline # Trainline
- (NSString *)cat_appName { return [self objectForInfoDictionaryKey:kCFBundleNameKey]; }
+ (NSArray <NSString *> *)cat_legacyNames { return @[@"Captain Train", @"Capitaine
Train"]; }
$
None
// Stylesheet-style UI Constants. @interface CATUI : NSObject // Tint
+ (UIColor *)tintColor; + (UIColor *)alternateTintColor; // Semantic colors + (UIColor *)noticeColor; + (UIColor *)lightNoticeColor; + (UIColor *)warningColor; + (UIColor *)lightWarningColor; + (UIColor *)errorColor; + (UIColor *)lightErrorColor; …
#pragma mark Environment + (UIColor *)navyColor { return CAT_HEXCOLOR(0x21314d); }
+ (UIColor *)snowColor { return CAT_HEXCOLOR(0xf2f4f7); } #pragma mark Actions + (UIColor *)mintColor { return CAT_HEXCOLOR(0x01c3a7); } + (UIColor *)fernColor { return CAT_HEXCOLOR(0x14b69f); } + (UIColor *)pondColor { return CAT_HEXCOLOR(0xd3f9f4); } + (UIColor *)ginColor { return CAT_HEXCOLOR(0xeffffd); } + (UIColor *)ivyColor { return CAT_HEXCOLOR(0x059e87); } + (UIColor *)samColor { return CAT_HEXCOLOR(0xe02007); } #pragma mark Grays + (UIColor *)darthColor { return CAT_HEXCOLOR(0x13181a); } + (UIColor *)moriaColor { return CAT_HEXCOLOR(0x323e42); } + (UIColor *)slateColor { return CAT_HEXCOLOR(0x647479); } + (UIColor *)stormColor { return CAT_HEXCOLOR(0x8c9da1); } + (UIColor *)steelColor { return CAT_HEXCOLOR(0xc0c9cc); } + (UIColor *)marbleColor { return CAT_HEXCOLOR(0xdce3e6); }
None
None
None
./screenshots.sh
%&'( iPhone 4/4s iPhone 5/5s iPhone 6/6s iPhone 6/6s plus
iPad (9,7 pouces) iPad pro (12,9 pouces)
None
(transition)
) * * * * * 6 weeks
⏰
33 33.5
☑ -CATDebugTrainlineUI YES
⏰
None
-
.
/010//10/2
None
(private) beta
None
[email protected]
None
None
None
None
None
None
None
What next?
[email protected]
@_nb @adhumi