dropbox/hackpad

Let's update Hackpad!

Opened this issue · 11 comments

Hi,
Hackpad is great but needs some polishing for performance and security reasons.
I started to update some of the dependencies. Most of them where simple replacements without any modifications needed.
I recently tried to update jetty (from 6 to 9). Jetty 9 offers Http/2 support (up to x15 performance increase!) and it's been roughly 7 years since jetty 6. For this, major modifications are necessary as jetty has evolved / changed significantly. As one might guess, jetty deeply used in almost all AppJet components. Some functionality needs to be redesigned as jetty has dropped depreciated classes AppJet uses heavily.

Is anyone interested in collaborating on this? I'm happy to exchange progess.

@leandermelms do you have a fork you are working on?

Yes, but unfortunately I've scheduled updating dependencies which require greater effort until I'm satisfied with the front-end implementation and the JS code, talking to the Scala backend.

IMHO updating Jetty and Solr is important though, since each of them are ~ 5 years old. Jetty 6 is still considered stable. However, HTTP/2 support would be very desirable to have.

Please let me know if you're interested in working on this.

I am interested. Hackpad has a better UX than out-of-the-box etherpad. For some reasons I cannot use hackpad in some environments and have to use self-hosted solutions. Having used Hackpad, etherpad looked primitive to me.

However, Hackpad seems much harder to setup than etherpad. I am thinking maybe we can back-port some parts of Hackpad to etherpad and contribute to the etherpad community as a whole.

Or maybe they have made significant changes outside etherpad and it is no longer relavent to back-port to etherpad. I am not sure. I need some help in understand the architecture of Hackpad.

@ztl8702 @leandermelms @andreabedini We just created a community fork, see #67. Hope you'll join our efforts!

@ALL @ztl8702 @leandermelms @andreabedini @dokterbob I forked Hackpad, and due to etherpad has move to node.js platform, become etherpad-lite. I think it's hard to put the changes back.
And the Hackpad's tech stack is quite out-of-date. So my plan is moving the js code into modern node.js style (Reactlize, etc ), and re-implementing all the API and URL routings in python

@dokterbob What changes have been made in Whackpad by now ?

Thank you for your invitation, now a days, I'm engaged with hacking Snabb. :) So, I'm afraid that I might have no time dissus it on irc, etc. My plan about Librepad/Hackpad has listed in README.md, It will take 1~2 month or even more.
If you decided to re-write the whole backend ( I'm not a JAVA guy, I love to write py/lua/cpp/go ), I'll join the project.

BTW, You can take my changes :)

Best Wishes,
Li