
Cross-platform email client with React and CoffeeScript - rpeden
https://medium.com/missive-app/our-dirty-little-secret-cross-platform-email-client-with-nothing-but-html-aa12fc33bb02
======
gumboshoes
So the headline is wrong, right? It's not just HTML. It's HTML + CSS +
JavaScript.

~~~
cpburns2009
With a massively bloated run-time for the desktop edition (i.e., Electron).

------
Steeeve
> You’d be surprised (I was!) at how much memory leak your JavaScript has if
> you don’t monitor it.

What are the most recommended ways to monitor for leaks in client-side
javascript?

~~~
pspeter3
You can log memory usage in some browsers but the memory usage is bucketed so
you will not get a fine grained number. At Asana, we look at the 99th
percentile and then use Chrome to take heap dumps.

------
reacharavindh
So, another electron app for Desktop? I've heard anecdotal comments on HN
about how electron based apps frequently hog resources and such an overkill as
a replacement for native apps. Anybody know of a dumb cross platform wrapper
that does just enough HTML/JS for apps like this to work without the bloat?

~~~
jszymborski
The Telegram client is a good example of how to do this right [0].

You can acheive this in python w/ pyQt/pySide as well... just include a
QWebView and hook into the javascript [1].

Avoiding the whole server & network stack makes things run obviously lighter.

[0]
[https://github.com/telegramdesktop/tdesktop](https://github.com/telegramdesktop/tdesktop)

[1] [https://stackoverflow.com/questions/6447011/pyqt-pyside-
webk...](https://stackoverflow.com/questions/6447011/pyqt-pyside-webkit-and-
exposing-methods-from-to-javascript)

~~~
kodablah
I believe QWebView w/ QtWebKit was deprecated in favor of QWebEngine which is
Chromium thereby causing the same problems as Electron (bulky, multi-process
which is the way of the browser these days). Granted QtWebKit appears to be
maintained in a fork at [0].

If someone wanted to use Chrome, a more bare-bones approach w/ Qt might be
CEF. An example in Python is here [1].

0 - [https://github.com/annulen/webkit](https://github.com/annulen/webkit)
(see the wiki) 1 -
[https://github.com/cztomczak/cefpython/blob/master/examples/...](https://github.com/cztomczak/cefpython/blob/master/examples/qt.py)

------
z3t4
Only use a framework if you know what you need!

