We’re excited to launch the Liveblocks Starter Kit to help developers kickstart their Next.js collaborative apps in minutes. With the Starter Kit, you can finally stop wasting weeks rebuilding table-stakes collaborative features—enabling you to focus on your core product:
- A workspace to browse and organize documents—including groups and private drafts
- The foundation of a customizable Figma-like real-time collaborative editor - A share dialog with groups and user read/write permissions
- Real-time updates throughout the app—so your users won’t ever need to refresh again
The Liveblocks Starter Kit is built with the best tools the Typescript ecosystem has to offer: Next.js, NextAuth, Radix, Node, CSS, and SWR. It’s also built with flexibility and customization in mind, so you can easily make it look and feel like your product, not an afterthought.
My co-founder and I have experienced first-hand how difficult and time-consuming building a real-time collaborative product can be, that’s why we created Liveblocks almost 2 years ago. The Starter Kit is the tool we wish we always had, so we hope you’ll like it!
And of course, AMA! The Liveblocks team and I will be around all day to answer questions.
If you know how to use React, that's pretty much all you need to know. It also includes some nice hooks to enable things like multiplayer undo/redo and live cursors.
Awesome to hear from the Notion team who really gets this deeply.
Slate definitely has its own limitations, especially when used on non desktop devices. Seems like ProseMirror would be a good open source alternative to Slate, what do you think?
We learned so much from Figma at Liveblocks. We spent the last 2 years rebuilding a lot of those core concepts as APIs any developers can use to make their own product multiplayer.
If you're interested in more technical articles related to the topic, I think you'll enjoy those two:
Love the work 0xcaOa did with Three.js to create this multiplayer light effect. Glad to see https://liveblocks.io was able to help them prototype this out to get a feel for that experience.
And… it’s great to see the web become a place where people can hang out and feel like they’re together in the same space!
Steven here, co-founder at Liveblocks. Happy to answer any question you may have!
In the meantime... Interested in building a multiplayer note-based app? We've built the foundations to make your project a reality. Add multiple types of blocks, and see them shared in real-time.
Along with text elements, we've got a number of more complex blocks & embeds that are ready to go:
Our collaborative block text editor is powered by Slate—adding a new block is as simple as creating a new Slate Custom Element. We've written the code to automatically sync Slate's state to Liveblocks.
Hope this helps, and can't wait to see what people create with this :)
Exactly! With Liveblocks, you can also store anything presence related. You can for instance store a selectedId and use that on the other side to highlight the selected element.
Good point, it's also important to consider this in the context of the application that will use those multiplayer cursors. It's important that the state of the document matches the cursors, so it makes sense to have both presence (cursors, selection) and storage (document data) be perfectly in sync even if that means having a slight 80-200ms delay.