Hacker News new | ask | show | jobs
by jfroma 4105 days ago
Shameless plug: I worked on a similar tool mdocs [1]. The main difference is that is opensource, it supports authentication and authorization [2] similar to Google Docs. The authorization part allows you to share documents at company level.

It is a 100% client-side application, it uses Firebase as backend and Auth0 for authentication.

[1] https://auth0.github.io/mdocs2

[2] https://dl.dropbox.com/s/w6bmji4t698v8qn/ss-2015-03-25T10-40...

2 comments

[1] was really confusing. It consistently errored when I tried to sign in, then when clicking the link for more details, walked me through creating an auth0 account. I did find [3] which made more sense.

[3] http://mdocs.io/

Interesting, looks like Firebase syncs the who record at a time, how do you avoid conflicts with 2 people editing at the same time?
It uses a theory called Operational Transformation [1] which is roughly the base for most collaborative tools like google docs.

My first attempt was using a library called ot.js [2], I changed it to support an async db since it only supported a in-memory store and I adapted to use mongodb. The experiment is in [3] and it has some bugs still.

Then I found out the guys at firebase adapted ot.js client side to work with their own db, and created something called Firepad [4]. So, I used that instead which was more stable and I added auth and authn.

[1]: https://en.wikipedia.org/wiki/Operational_transformation

[2]: https://github.com/Operational-Transformation/ot.js/

[3]: http://github.com/auth0/mdocs and http://mdocs.io

[4]: http://www.firepad.io/