The era of iOS openness has had something of a rocky start. What was hailed as unprecedented entrance into Apple's walled garden has seen its share of pushback from Cupertino, with some developers fighting to get even the tamest of features past the gates. Panic was rebuffed when they wanted its Transmit app to be able to upload to iCloud. PCalc was stymied after its developers designed a mini number cruncher for Notification Center. Launcher's customizable shortcuts were deemed a "misuse of widgets."
But when it comes to keyboards, it's pretty much been the Wild West. Aside from some early fear and uncertainty over the "Allow Full Access" button, and the temporary removal of Nintype's calculator function, we've been downloading and installing with impunity since day one. It's been somewhat surprising just how relaxed Apple has been about what's allowed to grace the bottom of our screens; whether they've helped us type faster or simply added a bit of flair to our favorite text editors, it's fair to say that the influx of third-party keyboards has been the biggest change to the iOS way of life since the opening of the App Store.
That sort of freedom has allowed developers to let their creativity roam. In just a few short months, we've seen everything from psychedelic skins to letter-less gif and emoji keypads, all offering a remarkable level of personalization we never thought possible on an Apple device. It's a veritable playground for developers, and nowhere has this rebellious spirit been embraced more than with Themeboard.
Pick a keyboard, any keyboard
Built by Taphive, the same prodigious minds that brought us TodoMovies and Tick, Themeboard isn't actually a single keyboard: It's a whole catalog of them. Wild keyboard customization isn't necessary a novel concept--apps like Ginger and Rainbow already offer plenty of options for fickle typists--but Themeboard doesn't merely offer a set of interchangeable colors and background pictures. Rather, it has set itself up as a depository where designers can experiment and share their creations without the fear of getting lost among the Fleksys and Swiftkeys of the world.
"With Themeboard, we focused on creating highly personal and beautiful keyboard designs," said Hosam Hassan, lead software engineer and founder of Taphive GmbH. "We also wanted to give a set of tools to designers, companies, and organizations from all around the world to bring their keyboard designs to reality with zero lines of code."
Themeboard is essentially a layer on top of Apple's existing structure. It installs just the same as a regular keyboard, but once it's in place, you can visit the companion app to choose from a variety of free and paid themes that add everything from fun icons and vivid colors to quirky fonts and gorgeous background images.
And Taphive has implemented a few excellent features too. To solve the all-too-accidental method of tapping the globe icon to switch keyboards, Hassan flipped Apple's method to one that makes more sense--when using a Themeboard keyboard, tapping the globe brings up a scrollable row of emojis, and you'll have to long-press if you want to switch to another keyboard. And there's a nifty toggle in the settings that will animate the key case whenever the shift key is tapped.
But good looks and smart navigation is only half the story, and here's where things get tricky.
Built from scratch
"The current APIs in the iOS SDK provided for keyboards is very rough," Hassan said. "There is almost nothing provided to get the developers started. We had to lay out every single key in the keyboard frame by frame per device per orientation. We had to layout every single key in the keyboard frame by frame per device per orientation."
Apple doesn't offer much help for anything beyond simple layout templates and button placement, so Taphive tackled the monumental task of building in-house versions of autocorrect, predicative text, and smart capitalization. Otherwise, every one of Themeboard's designers would need to start from square one when it came to text input, and Hassan wanted a uniform experience across all of the keyboards.
"The text engine is a massive project on its own, as Apple has been developing and refining their text engine for more than seven years now," Hassan said. "That puts an enormous pressure on keyboard developers since we have to implement a full text engine from the scratch. Trying to reach the same level of quality for third-party keyboard will definitely take years."
It's not quite as obvious when you use one of the keyboards that cut its teeth developing for Android, but without access to Apple's dictionary, writing anything other than short texts with a third-party keyboard can be enormously frustrating. It's the main reason why typing varies so greatly between keyboards in the App Store and one of the biggest frustrations of the system as a whole. While it's clear that Taphive has spent a great deal of time crafting its corrective text, it often fixes errors in unexpected ways, something Themeboard's team is constantly working to improve.
The long and buggy road
But Hassan's frustrations run deeper than a little hard work. Apple has squashed a good number of the crippling bugs that plagued third-party keyboards at the start, but many smaller ones remain, making it hard to fully adopt any of them for serious writing sessions. While he understands this from a user standpoint, Hassan wishes Apple would do more to help developers keep their keyboards tapping smoothly.
"There are numerous bugs with third-party keyboards in iOS 8, like not being able to write a review in the App Store, crashes in the Messages app... cursor jumping in Contacts and sluggish keyboard springing animation. All those are bugs in iOS 8 and the developers get blamed for it in the end."
And that's not to mention the lack of support for interactive notifications, text selection and dictation, as well as the whole wonky installation process. Much like the wishy-washy widget policy, it seems that Apple is somewhat reticent to fully embrace the world of third-party keyboards, holding back on allowing developers to incorporate its existing system-wide tools into their own designs. Hassan has built a very impressive system in Themeboard that actually improves on some of Apple's flaws, but ultimately the road to a successful iOS keyboard is fraught with potholes and roadblocks.
But he isn't about to give up. Hassan called the keyboard API "the most primitive I ever worked with so far," but he has big plans for Themeboard, including the development of an SDK to bring its unique designs to other keyboard apps.
But it's a pretty safe bet we won't be able to ever use it on the one Apple makes.