TE
TechEcho
Home24h TopNewestBestAskShowJobs
GitHubTwitter
Home

TechEcho

A tech news platform built with Next.js, providing global tech news and discussions.

GitHubTwitter

Home

HomeNewestBestAskShowJobs

Resources

HackerNews APIOriginal HackerNewsNext.js

© 2025 TechEcho. All rights reserved.

Mozilla Labs: TogetherJS

383 pointsby pieover 11 years ago

23 comments

gbadmanover 11 years ago
This is a really cool and ambitious project. Although some mention ShareJS, I would say that the OT portion more closely resembles that employed by Firebase in their Firepad project [1] (in that no centralized server manages ordering and history). Actually, this system has many of the features of Firebase in a self-hosted package.<p>As a user of ShareJS (for the real-time collaboration on Plunker [2]), I can see some interesting benefits offered by TogetherJS; the system has cursor and presence features out of the box.<p>That being said, the main drawback that I see in TogetherJS is that it seems to be tightly coupled in a way that it is hard to take smaller parts of the overall system. It would be great if the P2P network system could be extracted and plugged into a node.js Stream interface. That would allow the code to plug into a whole ecosystem of interesting libraries [3].<p>I&#x27;m really excited by all the powerful libraries that Mozilla has been pumping out these days. The web is a great place to be.<p>[1] <a href="https://github.com/firebase/firepad" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;firebase&#x2F;firepad</a><p>[2] <a href="http://plnkr.co/edit/?p=streamer&amp;s=TogetherJS" rel="nofollow">http:&#x2F;&#x2F;plnkr.co&#x2F;edit&#x2F;?p=streamer&amp;s=TogetherJS</a> (Demo)<p>[3] <a href="https://github.com/substack/stream-handbook#introduction" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;substack&#x2F;stream-handbook#introduction</a>
评论 #6415792 未加载
评论 #6415743 未加载
评论 #6415662 未加载
评论 #6416288 未加载
评论 #6415708 未加载
jkeeshover 11 years ago
This looks fantastic. I just have a question for the author (+ Mozilla). Since this is a hosted service, I&#x27;m a bit reluctant to integrate it, because I&#x27;m not sure what we should expect from Mozilla on this project. Is this a cool open source project that will get support for a little and then fade away? Is this something that a team is really behind and is going to continue to support and extend? Is it expected that most people will just host their own version? (doesnt seem that hard to do, but there is a lot of appeal in not managing the server for this at all)<p>If this was from a startup I would expect a free trial and then a pricing page that told me what happened if I had X # of users or Y # of requests, but without that info, it seems there is a lot of missing information. Does Mozilla just plan to keep it hosted indefinitely? Or how do you plan to handle users of different sizes? Our use case now is small, but in choosing to go with this tool (vs. Firebase or something else), the switching costs down the road are relevant.<p>I&#x27;m planning to try it out in a small test either way, I&#x27;m just curious about more details on the mozilla-hosted version.
评论 #6418011 未加载
zamalekover 11 years ago
I gave this a go with a &quot;thick-client-in-browser&quot; app that we are writing here [1]. I had to hack the code a bit (e.g. remove the clickable class check in the event simulator) but I was shocked how well it dealt with this scenario and how little effort I had to put in.<p>It&#x27;s still a long way off from supporting this type of web page (e.g. dragging does not work, and would love to submit a PR if I only had the time to dig in more); but the almost-instant success with it was impressive. Good work Mozilla.<p>[1] <a href="http://www.k2.com/displaycontent.aspx?id=5502" rel="nofollow">http:&#x2F;&#x2F;www.k2.com&#x2F;displaycontent.aspx?id=5502</a> &#x2F; <a href="http://www.formsondata.com/" rel="nofollow">http:&#x2F;&#x2F;www.formsondata.com&#x2F;</a>
arobergeover 11 years ago
This is fantastic. I put two lines of code in my site designed to teach javascript programming <a href="http://reeborg.ca/learn_js_together.html" rel="nofollow">http:&#x2F;&#x2F;reeborg.ca&#x2F;learn_js_together.html</a> and it appears to just work (based on a quick test which is all I could do for now). Well, except for a bug: when the robot finishes a program, a pop-up window normally appears to indicate if the task was done properly ... and it does not appear when TogetherJS is activated. To compare the version without, just remove &quot;_together&quot; from the URL.
评论 #6417864 未加载
gourneauover 11 years ago
Was this previously know as towtruck?
评论 #6415356 未加载
评论 #6416271 未加载
pjgomezover 11 years ago
Another great project from Mozilla, congratulations. I&#x27;ll definitely give it a try.<p>Sorry to blow my own horn, but a few months ago we launched a similar project called Quolony <a href="https://quolony.com" rel="nofollow">https:&#x2F;&#x2F;quolony.com</a> (we are a small startup from Salamanca, Spain). Right now we are working as a free service and we plan to publish it as open-source in the next few months. People can use it individually using a browser extension or in whole sites including our library. We have avatars, synchronized text selection, private and public chats, persistence, cobrowsing, file transfers and a lot more.<p>Some samples: <a href="https://quolony.com/demos/photomess/" rel="nofollow">https:&#x2F;&#x2F;quolony.com&#x2F;demos&#x2F;photomess&#x2F;</a> (drag and drop) <a href="https://quolony.com/demos/quolony/developers/" rel="nofollow">https:&#x2F;&#x2F;quolony.com&#x2F;demos&#x2F;quolony&#x2F;developers&#x2F;</a> (shared demo)<p>At the low level, we extend the browser event model to make it easier to use it in existing applications.<p>I hope you guys can give it a try and tell me what you think.<p>Kudos mozilla!<p>[EDITED: fixed linked]
评论 #6416625 未加载
评论 #6417322 未加载
Sir_Cmpwnover 11 years ago
I&#x27;m getting pretty tired of people releasing js libraries and not telling you that they depend on jQuery. You don&#x27;t just add that script to your page, you add that script <i>and</i> jQuery to your page. Stop assuming everyone already has jQuery, guys.
评论 #6418017 未加载
mbreeseover 11 years ago
Does this require using Mozilla&#x27;s servers on the backend? I&#x27;ve played with ShareJS and a commercial hosted OT service, but they all required talking to the server.<p>So, I assume this does too, but I haven&#x27;t seen where I could install it on my server.
评论 #6415534 未加载
评论 #6415536 未加载
zeropover 11 years ago
I want to implement a real time Collaboration editor like google docs because I want to keep data on my own servers.. Can anyone suggest me architectural points to build that...what should be stack on server side, how to send edit diffs etc..
评论 #6415954 未加载
评论 #6417713 未加载
评论 #6416701 未加载
评论 #6416036 未加载
sequoiaover 11 years ago
Looks cool! I wonder how you&#x27;d negotiate authentication with this... both users logged in presumably, you could record edit author as whoever clicked the save button (or upon each action in a &quot;real time&quot; saving application).
评论 #6415805 未加载
dshipperover 11 years ago
This is very similar to what we do at Firefly (<a href="http://usefirefly.com" rel="nofollow">http:&#x2F;&#x2F;usefirefly.com</a>), except we support all the way back to IE 8. Kudos to these guys for putting this together - especially if it works well. It&#x27;s a lot harder than it looks.
FiloSottileover 11 years ago
It seems to me that this could be wrapped in a bookmarklet, to be able to use it on any website, no?
评论 #6419950 未加载
mqzaidiover 11 years ago
Looks like this would be great for customer support, and could be a nice alternative to olark. It can be configured to automatically post the invite url to another dashboard, where one of the CS execs can pick up and walk the user through.
kimarover 11 years ago
We recently built openmic.io to add sound annotation to pictures &amp; websites. This pops up just as we started looking into real-time collaboration. I guess it validates the need for better in-context collaboration tools.
infocollectorover 11 years ago
Used to be called Tow Truck.
AUmryshover 11 years ago
Does anyone know how this would handle an iframe? Could this potentially be &#x27;injected&#x27; into a page using bookmarklets?<p>edit: so, it doesn&#x27;t handle iframes. Bookmarklets work but are buggy.
itsbitsover 11 years ago
Video and Audio chat functionality are real advantages over other collab tools...awesome work...i will surely check this out some time..BTW is IE11 will be providing WebRTC support??
评论 #6415675 未加载
smoothpooperover 11 years ago
I could see it being used when creating support websites or customer care related websites. Anyone else has any ideas on where else can this be leveraged?
morganteover 11 years ago
The content sync is the really impressive feature here. Basically drop-in multiuser support.
jonny_ehover 11 years ago
Seems quite similar to GoInstant.
6renover 11 years ago
NB: unrelated to TogetherJ
ilakshover 11 years ago
Seems similar to ShareJS
Kiroover 11 years ago
Can someone give me a use case for this?