Facet.ai is an AI-powered image editor. They are creating
the first generation of AI-human visual creative tools, combining the latest
advances in machine perception with innovative graphics research to make digital
creation more vibrant and intuitive for digital artists.
As an image editing company, Facet.ai has always been focused on providing
powerful tools and features to help their users be more creative and efficient.
As they grew and collected user feedback, they realized the importance of
providing a collaborative product experience. They received numerous requests
from their users for the ability to work on images together in real time, share
their work, and receive feedback on their projects. Knowing this would
significantly benefit their users, they decided to take action.
Two years ago, they started building their collaborative infrastructure using
Automerge, which provided them with conflict-free replicated data types (CRDTs).
However, they soon realized the difficulty and time-consuming nature of
maintaining such an infrastructure. This included scaling and performance, using
websockets for realtime user communication, and dealing with all the concurrency
issues arising from network conditions or people going offline.
Kyle Schaeffer is an Engineering Manager with an impressive 3-and-a-half-year
tenure at Facet.ai. Even though recent development in
building a collaborative infrastructure proved to be much more complex than
expected, he was determined to show how collaboration could add real value to
the company and its users. Facet holds an annual Creative Week to promote
creativity and collaboration, where developers are given one week to work on
whatever projects they please.
For this Creative Week, Kyle joined a squad of engineers and designers with a
mission to create a collaborative image editor experience and demo it to the
whole company. They would have to make a compelling argument for the entire
company that proved this new product was worth investing in and taking to
production.
They had only one week to build a reliable, scalable, performant infrastructure
and offer a delightful user experience.
Kyle had stumbled upon Liveblocks on Twitter over a year ago when they were
looking for a way to build their collaborative infrastructure. After doing their
research and technical validation, they quickly realized that Liveblocks was a
perfect reliable solution for their need and would also be able to scale with
them in the future. Everything they had been struggling with was addressed and
supported out of the box by Liveblocks.
Encouraged by this past discovery, they decided to use Liveblocks as their
platform and named their project Prompt.ist.
“We were building our own collaborative infrastructure, but getting it to scale, be performant, work over web sockets and handle all the concurrency issues that come with network conditions or people falling offline was hard, to be honest. When we discovered Liveblocks, it was as if someone answered all of our questions and gave us exactly what we were looking for. When we shifted our focus to Liveblocks, everything became much easier. We were able to free ourselves to focus on what mattered to us: make image generation exciting through AI and machine learning.”
Kyle SchaefferEngineering Manager at Facet.ai
Prompt.ist uses React, so they installed the
@liveblocks/react
package to implement realtime collaboration without adding too many dependencies
to their codebase. With the Storage block, they can synchronize the document’s
state between users to enable them to view and edit the same data in real time.
Within one day, they had a multiplayer room and a canvas where multiple people
could see images in realtime. Thanks to Liveblocks, they could incorporate
presence avatars and live cursors and show all actions done by a member in the
document. This included the selections they made, assets they moved around,
prompt they typed, the choices they were given, and the final selection.
In only three days of work, they reached the first phase of their project with a
Minimal Viable Product and took the remaining two days to refine the user
experience even further.
You can see who is working at the same time, and what they're doing.
Any actions are shared in realtime with all other people in the document, providing a fully transparent experience.
Any actions are shared in realtime with all other people in the document, providing a fully transparent experience.
They achieved remarkable success and Prompt.ist, their
ambitious attempt to bring together text-to-image AI and collaboration, was
voted “most creative” project during Facet Creative Week. Blown away by the
result, the company decided to take the extra step and invest a few additional
weeks of their team’s time in perfecting the experience and making it
production-ready.
Through an instantaneous and delightful user experience,
Prompt.ist has since become one of the most promising
applications for AI art generation, with thousands of people using it since its
launch in October 2022. When the team made Prompt.ist
available to the public, everyone at Facet.ai quickly realized the power of
collaboration and its impact on users. People need inspiration and seeing what
others are doing next to them fuels their creativity. They noticed a lot of
people forking the work of others to make it better, to take it a step further.
Figma perfectly encapsulated the essence and value of collaboration in their
catchphrase, “Nothing great is made alone”. Facet.ai
understood it very well and is now using Liveblocks to own and power their
collaborative experiences so that they could focus on their core business and
differentiator.
Ultimately, the team looked back on their journey with Liveblocks and decided to
use Liveblocks to incorporate more collaborative experiences into Facet.ai,
their flagship product. This new strategy enables them to focus on creating
impactful and unique engineering while relying on experts to manage complex
aspects that could otherwise require a lot of time and effort to implement and
maintain: like building a realtime collaboration infrastructure.
“Collaborative experiences are the future of software. As we find ourselves increasingly online or working in virtual environments, this will be essential. Having a service like Liveblocks has been really great for us because we see the value it can add to our product, and we really want to continue to invest in that and understand what sort of really cool features we can put in front of users and create opportunities for collaboration. It's going to be increasingly valuable in the future.”