Luke Zhao iOS Developer ★ UI & 3D Design ★ Tokyo, Japan.

I design & write code for iOS, Currently @ Pinterest

Past Projects Resume GitHub

.useGlobalCoordinateSpace explained

I got asked a few time on an issue that developers face when using Hero. The animation that Hero produces is almost correct. But there are some views which are suppose to be on top, get obscured during the transition and suddently appear after the transition finishes.

The exact detail can be found in this issue: And the solution I posted there is to use the .useGlobalCoordinateSpace modifier.

Eventhough there is a simple solution, the reason why it works is not exactly clear to most devs. So in this post I want to clearify what .useGlobalCoordinateSpace modifier does and to give you guys some hint on how Hero construct the view hierarchy used during the transition.

Read More

Interactive transitions with Hero

This is a tutorial for making interactive transitions with Hero. You can follow along by downloading the non-interactive version. Or checkout the completed example project on GitHub. Each step in this tutorial is a commit in the repo. You can view the diffs here.

Making interactive transition with Hero is very straightforward. All you need is a gesture recognizer and a few extra lines of code. Once you have downloaded the non-interactive version. Follow along and lets make it interactive!!!

Non-interactive → Finished Version

Read More

Hero - Elegant transition library for iOS

Hero is a library for building iOS view controller transitions. It provides a layer on top of the UIKit’s cumbersome transition APIs. Making custom transitions an easy task for developers.

Below are some awesome examples showcasing Hero. I would love to include transitions you have made, please contact me to get your transitions featured.

🔷 - included in the example project.

Basic Examples

  1. Basic 🔷
  2. Music Player 🔷
  3. Menu 🔷
Read More

Facebook comment plugin in Jekyll

Jekyll is a awesome static site generator. Perfect for blogging needs. But since it is JUST generator, it doesn’t have a database for storing user generated data (user comment for example).

Lucky for us, we have Disqus and Facebook to help us store and display user comments. We only have to provide them with the current page URL for them to construct a comment form.

Read More

blog init (testing with TinyPress and Jekyll)

Well, this is the fifth try.

I have long been waiting to create my own blog. I have tried it a few times using Wordpress, Jekyll and Tumblr. I wrote on different things but none are technical. They each lasted for a few weeks before I stop visiting them. I know that it’s not the tools’ fault but my laziness. However! This time I will try my best on keeping a good blogging habit.

I have been trying a lot of new things lately:

  1. Making cakes
  2. Learning 3D graphics library (OpenGL, Metal, shaders, Linear Algebra)
  3. Learning 3D modelling/sculpting using Zbrush, maya, and MavelousDesigner.
  4. Trading stocks and playing with algorithmic trading using Quantopian
Read More

Spector (Brand Icon Design)

Spector was a startup idea born in a hackathon. The app find local inspectors to help user rent or buy houses. The user will receive detail analysis about whichever housing he/she is interested. I did the initial web development and designed the initial mockup for this project.

Read More

Footprint (iOS Diary App)

Footprint is a minimalistic note taking app. Goal is to give you the best possible user experience available for helping you capture you life events. Made with subtle animation and delightful gestures which truly utilizes the power of your device. 

Read More

Project Delivery (iOS App Concept)

Project Delivery is iOS UI concept made in Nov 2015. It is an P2P on-demand delivery app that can deliver anything from your local stores(similar to Postmate or UberRUSH). At the time I was experimenting with translucent UI elements and interactive animations. I have made a prototype using techologies like Firebase, UIKit Dynamic and SpriteKit.

Read More

Instant Chat (iOS App Design)

Instant Chat is iOS UI design made in 2014. As you can see, it is just a simple chat app. I was learning swift(v1) and made an unpublished app using this design. The sad part is the source code completely won’t compile now (T T).

Read More