Awesome to hear you're using Hocuspocus in production! Yjs can indeed be hard to understand well, but when used together with Tiptap it's as easy as adding an extension to your editor :-) We're running Hocuspocus in small docker containers in swarm clusters, which makes it super cheap to run.
HN user
philipisik
Interesting. What kind of content do you store in the ydoc? We're mostly working with text-based documents and don't really have any kind of performance or storage issues. Yjs documents are, if created well, both really fast and small. Hocuspocus easily handles >25k concurrent user connections on single instances without any real scaling effort.
I can definitely see your point for SaaS hosted documents, which, to some extent, applies to a lot of startup cloud services, and that's exactly why we open-sourced Hocuspocus: so you can host it yourself :)
Hi HN,
We’re the team behind Tiptap, an open source headless text editor framework built on top of ProseMirror. After two months in beta, Tiptap 3.0 is now stable.
Tiptap gives developers full control over their editing experience. You can build a rich text editor, a collaborative doc tool, or something completely custom. It doesn’t come with a UI, so you bring your own components and design.
What’s new in 3.0:
We cleaned up the core, reduced complexity, and made it easier to integrate into modern apps. A few examples:
- Smaller bundles
- Stricter types
- Cleaner API
- New static renderer (output as HTML, Markdown, React, or anything else)
- SSR support
- Several features moved from paid to open source (like emoji, math, file handling)
- General improvements to the editor and extension manager
There are some breaking changes, mostly around package names and how imports are structured. We wrote a migration guide to walk you through it: https://tiptap.dev/docs/guides/upgrade-tiptap-v2
How we make money:
We offer commercial tools like a collaborative editing and AI backend and a set of UI components. The core editor is open source and will stay that way.
We’d love your thoughts. What’s still confusing? What could be better? Happy to answer anything here or in the GitHub repo.
Thanks for reading,
The Tiptap team
Hey, that means a lot! Thanks for sharing. We built Tiptap because we felt the same pain you described. Feel free to join our official Discord community if you want to show your work or need support: https://tiptap.dev/discord.
Great question! We've created a page explaining what counts as a cloud document: https://tiptap.dev/knowledge/what-counts-as-a-document. As long as you don't sync editor documents to our cloud services, you're good to go. The AI extensions can only work on the client side. Hope that helps :-)
From the page:
What does not increase your limit:
Some of Tiptap’s features and common usage patterns do not create new documents. Here are a few scenarios that do not increment your overall count:
Integrating the Editor without Collaboration: You can embed Tiptap’s Editor in your application for local or front-end use without creating any Tiptap Cloud documents. As long as you don’t store documents in the Tiptap Cloud, your count remains unchanged.
Using Content AI without Collaboration: Content AI features, such as autocomplete or content generation, do not require collaboration. If you don’t create new documents or store your AI-generated content in the Tiptap Cloud, you avoid increasing your document total.
Importing other file formats: You can import any number of files in formats like DOCX or MD. This action alone doesn’t raise your count. You only add to the count once you save them as Tiptap documents in the Tiptap Cloud.
Comments and Revisions: Comments and revisions live in the document’s metadata. They never raise your document count, but you must sync the document to the Tiptap Cloud to use them.
Thanks for your feedback! It's highly customizable. Feel free to let us know if you need any additional options to meet your specific needs. We're happy to help!
We don't know the use case and content... We're providing the tools to build the editor-AI-UX, which you can then connect to the LLM of your choice.
In our AI extensions, we provide callbacks like onSuccess that you can hook into, to send analytics events and track the AI's responses.
Agreed, adding Cursor-like AI features to a rich text editor is way harder than it should be... You have to handle prompts, context management, streaming, error states, UI, undo/redo, multiplayer sync, AI UX, it all adds up fast.
Thanks for the positive feedback! You're right. The AI features are part of our paid offerings.
We're currently working on new open source features for the editor core, such as Markdown support, a decorations API, and editor content migrations: https://tiptap.dev/tiptap-editor-v3
We also recently released Hocuspocus V3 (https://github.com/ueberdosis/hocuspocus/releases/tag/v3.1.0).
Not yet. It's a lot of work to maintain more frameworks, docs and support.
Really thoughtful comment! Thanks for taking the time.
Yeah, figuring out the right business model around open source is always a balancing act. And it’s never done. We started Tiptap by monetizing some of the more complex editor extensions, but with the launch of cloud services, we’ve gradually shifted that line to “cloud vs non-cloud,” like you said. Still, that line keeps moving as the ecosystem grows.
Your point about one-time payments for solo developers or indie founders makes a lot of sense. Honestly, we've been actively thinking about such an offering for quite a while and how to make Tiptap more accessible without giving up on sustainability.
Hi, thanks for letting us know. Will check the image size. You can find an overview of all components in our docs :-) https://tiptap.dev/docs/ui-components/components/overview
Hey, Philip here, one of the co-founders of überdosis and Tiptap. I’ve got a lot of thoughts on this, so I’ll keep it short.
While there’s no right or wrong, my experience is that starting as a solo freelancer to cover your bills while building your product usually works better than running an agency. Even with just 3 or 4 people, you’ll spend a ton of time on sales and project management, which can quickly bury your own product work.
We nearly killed our company at überdosis when transitioning from an agency to a product company. On paper, funneling agency revenue into product development sounded perfect. In practice, juggling client deadlines (with real pressure) and the growing needs of Tiptap (maintenance, support, new features) was brutal.
Open source is also powerful. It helps you build a community and attract leads, but it demands a lot of maintenance and support. It’s worth it if you have a clear strategy.
My personal advice: keep your operation as lean as possible, handle a few selective freelance projects to stay afloat, and pour every remaining resource into your product. Once it gains enough traction, you can let go of client work without risking your financial stability. Good luck :-)
Interesting. We developed a POC for speech-to-text earlier this year, but it's not ready for release yet. Thanks for sharing your case. Since Tiptap is headless, we're always curious to see what people build on top of us :-)
Ups ^^
Not a real-world case, but for React apps, we have at least tried to clarify the most common errors we know of in a performance guide: https://tiptap.dev/docs/guides/performance
Thanks for your feedback, I really appreciate it. I would like to understand if you haven't noticed our ProseMirror related content yet, or if there is something missing for you.
1. We mention ProseMirror in the first sentence of the editor docs "Tiptap is a headless wrapper around ProseMirror - a toolkit for building rich text WYSIWYG editors [...]" at: https://tiptap.dev/docs/editor/getting-started/overview
2. We have a whole page on our docs about ProseMirror: https://tiptap.dev/docs/editor/core-concepts/prosemirror
3. We explain how to access the ProseMirror API in our documentation: https://tiptap.dev/docs/editor/extensions/custom-extensions/...
4. We have a section in the docs explaining the ProseMirror schema: https://tiptap.dev/docs/editor/core-concepts/schema#get-the-...
5. We mention ProseMirror in the first paragraph of the readme.md of the GH repo: https://github.com/ueberdosis/tiptap
6. We mention ProseMirror on the editor landing page "Powered by ProseMirror [...]" at: https://tiptap.dev/product/editor
Super curious to hear about your use case and what you need to know/develop in ProseMirror that we should mention in our docs :-)
You're welcome (:
Woah, much appreciated! Thanks :-)
Thanks for your kind words :-) Never heard of anyone extending Moodle with Tiptap before.
You can build a Notion-like editor on top of https://tiptap.dev :-) Here is a demo of what such an editor might look like: https://demos.tiptap.dev/
Since Tiptap is headless, you have the freedom to design and develop the UI exactly the way you want.
It's Release Day: Tiptap Stable Release, Tiptap Collab & Hocuspocus 2.0.0 are out!
We set ourselves some bold goals this year and are delivering with our biggest releases yet.
Tiptap Editor Stable Release
We have released the 2.0.0 stable version of the Tiptap Editor. After 24 months in beta and a challenging last year, we have taken Tiptap to the next level! From now on, semantic versioning applies. The Tiptap editor is now an adult: https://github.com/ueberdosis/tiptap/releases/tag/v2.0.0
Tiptap Collab Release Beta
After six months of work, we finally announce the launch of Tiptap Collab, the Plug'n'Play real-time synchronization and collaboration cloud for your app. It's Hocuspocus on steroids in the cloud: https://tiptap.dev/hocuspocus/server/cloud
All you need is a Tiptap Pro account and a few lines of code in your Tiptap editor, and everything is in sync. No matter what content you've stored in your Tiptap editor.
And guess what? You can use Tiptap Collab with every app! Since Tiptap Collab is based on Yjs, you can use it for every application, as long as you use Yjs. It’s done with a few lines of code in your app.
Hocuspocus 2.0.0 Release
After the stable release in January 2023, Hocuspocus gets its first major version update with the new core feature called “Multiplexing”. Multiplexing allows you to synchronize multiple documents over the same websocket connection. This is especially useful when working with multiple documents at the same time and will make this experience even faster: https://github.com/ueberdosis/hocuspocus/releases/tag/v2.0.0
We are excited to invest even more time and commitment into Tiptap and especially look forward to your contribution!
Tiptap is a product baked by and for the community and will be even more this year.