The end of Figurative

I've decided to pull the plug on this project and removed the app from the App Store on November 25, 2024. This decision came just a few hours after reading this post by Wil Shipley on Mastodon:

Amazon has shut off the feed that allowed Delicious Library to look up items, unfortunately limiting the app to what users already have (or enter manually).

I wasn’t contacted about this.

I’ve pulled it from the Mac App Store and shut down the website so nobody accidentally buys a non-functional app.

If you're reading this, you probably already know what a truly marvelous app Delicious Library was. Figurative, however, was constantly breaking. I realized it was time to stop—even as a free app, it wasn’t fair to you.

Here's some context and background…

This app began as an experiment to run Figma on my iPad Pro after Craig Federighi announced the Magic Keyboard accessory in a YouTube video. We got excited anyway! iPadOS updates are almost non-existent—or lacking at best—but we all love our iPads and really want to use them as computers. Like many others, I bought the accessory and immediately opened Figma in Safari. It was 90% there—documents loaded, but things like scrolling or using the Apple Pencil didn’t work at all. Imagine if just panning around the canvas was a no-go, you wouldn't get too far making edits.

So, I built a compatibility layer that hooked into WebKit internals, enabling touch and Apple Pencil interactions in Figma. I also added code to replicate FigmaAgent's functionality and provide iOS fonts to Figma's code.

The first version ran incredibly smoothly, so I launched it on the App Store. It even got featured! Encouraged by this, I added features like undo/redo gestures.

Unfortunately, the app heavily relying on the inner workings of WebKit meant things could break at any moment—even minor iPadOS updates would cause major issues, such as cursor or touch events not being delivered. By the way, Apple Pencil support worked by simulating a mouse and sending those signals to WebKit, much like on macOS.

As the app grew in popularity and more users relied on it for serious projects, my inbox was flooded with reports of larger documents crashing due to iPadOS's strict RAM limitations for third-party apps. Even today, if a tab uses more than about 50% of physical memory, the system kills it. Unlike macOS the lack of virtual memory rendered Figurative useless for large projects. Getting a more expensive 1 TB iPad meant having more RAM, but with those hard limits you can't even compete with 8 GB of RAM from a MacBook Air.

As time permitted, I implemented fixes and reworked hacks to keep the app functional with newer WebKit versions. I even managed to hack external screen support before Apple did with Stage Manager, but it was always risky. Things kept breaking in one way or another.

In my latest update, version 1.4, released in January 2024, I introduced support for Apple Vision Pro. I was optimistic about its larger memory capacity and more powerful specs. It sounded good on paper. However, Apple Vision Pro is essentially an iPad, and connecting your Mac through the Virtual Display offers a much better experience.

Hopefully, one day we’ll see a real desktop-class Safari, virtual memory for WebKit tabs, or at least some entitlements that make a fully-fledged Figma app for iPadOS (and maybe visionOS) a realistic endeavor for Figma. As we close out 2024, I don’t think even them could achieve a 1:1 port of their macOS app.

Thank you all for your support. Special thanks to Nelson Taruc and many others. Goodbye! —Matías.


Version history

Version 1.4

This is the first version for Apple Vision Pro.

It also improves compatibility with Figma so that installed fonts will appear when editing files. It also includes important under the hood work for future updates.

Released on January 31, 2024

Version 1.3

This release fixes compatibility with iPadOS 17.

Released on December 24, 2023

Version 1.2.2

This is a minor release that improves compatibility with iPadOS 14.

Released on November 8, 2020

Version 1.2.1

This is a minor release that addresses the following issues:

Released on July 23, 2020

Version 1.2

This release introduces some new features focused on bringing an improved touch experience:

This release also address the following issues:

Released on Jun 10, 2020

Version 1.1.2

This is a minor release that addresses the following issue:

Released on May 31, 2020

Version 1.1.1

This is a minor release that addresses the following issue:

Released on May 31, 2020

Version 1.1

This release introduces some new features:

This release also addresses the following issues:

Released on May 29, 2020

Version 1.0.1

This is a minor release that addresses the following issues:

Released on May 23, 2020

Version 1.0

Initial release.

Released on May 22, 2020