Otávio C.

Tapestry Connectors

The Iconfactory released Tapestry, an iOS application that displays information from multiple sources in a unified way.

Right out of the box, it supports several services, including Mastodon, Bluesky, and Reddit. However, users are not limited to these first-party connectors.

The beauty of the app lies in how it works under the hood. Instead of building an application with a fixed number of connectors, the team created a framework that allows developers to plug in their own.

To support developers, they put together a website documenting everything possible with their APIs and released a macOS application for developing and validating new connectors without requiring installation or testing on a real device after making changes.

I backed the project on Kickstarter and have been using it since the very first TestFlight build, exploring the app and testing Friday's builds. But only recently did I decide to experiment with the API and create my own connectors.

Last weekend, I ended up creating connectors for these services I use:

What's worth highlighting is how easy it was to create these connectors using the API they provided. Even though the functionality of the first two is trivial, the one for Glass was also simple to build.

The first two are timelines of status messages and photos. The complexity lies in showing the user avatar and parsing some of the content using regular expressions1. The Glass connector takes the username of a user on that platform and adds their photos to the timeline. There's user validation to ensure the user exists on the platform, integration with Mobile Safari so that a public profile on Glass can be used as input to extract user information when creating a new feed with the connector, and the ability to launch the Glass app so users can interact with the photos.

In short, it was extremely simple to build these connectors using the documentation and the testing application The Iconfactory published. I'm looking forward to seeing connectors from other developers and also implementing new connectors in the future.

  1. Big thanks to Adam Newbold from omg.lol for adding the height and width of photos to the RSS output so that I could parse them. This allows the connector to show the photos with the correct aspect ratio. Thanks!

#JavaScript #Tapestry