Login screen (uses Digits from Twitter for auth)
Great for aspiring artists!
Designers can work with developers from anywhere in the world on user interface designs!
Use Digits from Twitter to sign in and find your colleagues to add to a canvas in Lotus.
Multiple canvases can be created in Lotus with different groups of collaborators.
The iPad Pro and Apple Pencil are revolutionary tools to enable creative people like designers, developers, and businesspeople. While apps available today for these tools focus on lone creatives, none tap into the power of working together, in real time.
What it does
Lotus is a creative canvas for collaborating in real time with others around the world. It allows designers, developers, and other people to connect to a shared canvas where they can draw together in different colors, annotate each other's work, and explore ideas. Collaborators can be located anywhere in the world with a network connection or even in the same room (in which case peer-to-peer networking is used instead).
How we built it
We looked at some examples of how other apps integrate with Apple Pencil to incorporate pressure sensitivity and tilt. We created an original design for the app, trying to simplify the user experience as much as possible.
Challenges we ran into
- Network connectivity can be spotty, meaning that Firebase will not be the best choice for transmitting the whiteboard. For these cases, we implemented peer-to-peer connectivity instead to ensure people aren't left out in the cold.
- Synchronizing UIKit touches between devices over the network proved to be challenging. Our shapes and line forms looked really weird until we figured out a better algorithm.
Accomplishments that we're proud of
- Building a fully working app in just 48 hours
- Simplifying sign-up through the use of Twitter's Digits library
- Building something we can actually use in our daily work together!
What we learned
- The pitfalls of integrating with the Apple Pencil (stroke sizes, tilt angle, pressure sensitivity). It's a new platform and the SDK still has some issues here and there.
- How to get around network connectivity issues by falling back to multiple connection paradigms when necessary.
- Brian is a designer by day and this was his first time really getting down and dirty with writing code for animations, navigation between view controllers, and custom classes for interface elements.
What's next for Lotus
We plan on integrating VOIP to allow collaborators to talk about their designs without having to call each other via a different program. We also want to allow importing of images to the canvas, additional drawing tools, and eventually stencils that can be placed directly on the canvas (again, all in real time). With Lotus, we aim to recreate the same type of experience you can have standing around the same whiteboard in an office, only from anywhere in the world.
The tentative launch date is March 15, 2016. Get ready!