10 ms·
1. It's an Electron app, but it is built to use as little RAM as possible, when I run it on my old Macbook Air, it consumes only around 300mb of RAM maximum, wh
by muszc-master 8y ago
1. It's an Electron app, but it is built to use as little RAM as possible, when I run it on my old Macbook Air, it consumes only around 300mb of RAM maximum, which is less than what Finder consumes, and I consider everything over this limit to be a bug.
2. Currently not supporting Mbox/Maildir but downloading emails directly from the server, however an import of this is on the todo list
3. Re: turn off conversation view: not at this time. Do you prefer not having it in a conversation view?
4. No POP3 yet
5. I think you can achieve this using folders/labels in Ivelope
Thanks for the positive encouragement!
Edit: formatting
- yani 8y ago300MB of ram sounds like a lot to me. What are you storing in memory that is that large? If I dont use the app for 1 hour will it stop using the memory?
- muszc-master 8y agoMost of this comes from overhead in Chromium, which currently (the version used by Ivelope) suffers from a few bugs which increases memory usage. I think this will drastically go down as time progresses and new updates of Chromium becomes available
- wcarss 8y agonot intended to be a hostile ask here, but do you know any specific bugs to check out? As a past (very minor) contributor to chromium+webkit I'm curious if there's anything one can do to help, but I haven't kept up with their status in a long time.
- muszc-master 8y agoSpecifically the image bug, as another commenter linked to: http://seenaburns.com/debugging-electron-memory-usage/ http://seenaburns.com/debugging-electron-memory-usage/
- opencl 8y agoIs this even considered a bug by the Chromium team (i.e. is there any indication of plans to fix it, or is this just the image cache working as intended)? It's a 10 year old project and memory usage has always been fairly high, I don't see any indication of a major focus on reducing it anytime soon. I don't hate Electron apps or anything, but the ones I already have open are using up enough of my memory that there isn't much left to run more of them. I really do hope this improves in the future though. If not I may just have to buy more RAM.
- Kliment 8y agoThat's just the base cost of using electron (along with the associated CPU usage). It's terrifying but you get that much usage even if you're not storing anything in memory.
- brandonwamboldt 8y agoWell that's just not accurate. With our Electron app, the main process consumes 40mb of RAM, with each window using 30mb of RAM, so if you have a windowed app, thats a minimum of under 70mb of RAM (results will differ, our app is quite large).
- Etheryte 8y agoYeah, this is realistic. I wish people would stop perpetuating the myth that "That's just how Electron is". It's perfectly possible to write Electron apps that don't automatically hog half a gig of RAM.
- Kliment 8y agoThat's news to me, and people who make electron stuff tell me they can't get it down below a few hundred mb of memory usage. Can you point me to some resources about reducing that?
- Siilwyn 8y agoI'm curious too! I found one interesting article about Electron eating memory with images: http://seenaburns.com/debugging-electron-memory-usage/ http://seenaburns.com/debugging-electron-memory-usage/
- rsynnott 8y agoAre there any examples of Electron apps that don't do that, though? I've never seen one that didn't like to eat at least a few hundred MB, and most of them seem at least somewhat leaky, too.
- 8y ago
- Lio 8y agoI'm sure that a client like Mutt would use much less but considering that many emails have embed HTML and would ideally use a modern web view to render correctly, how much overhead is there from from using Electron/chromium if you're going to load all of that anyway? I couldn't find exact figures for MS Outlook but Office 365 seems to require 1Gb as a minimum. A quick look at the Gmail tab I have open in Chrome seems to be taking roughly 390Mb so this would seem to be an improvement over that. As a genuine question, what sort of size would you expect for an optimised native app with the same functionality?
- chrismorgan 8y agoFor reference, when settled, Gmail in Firefox uses 200MB or a bit more, while FastMail uses around 10MB. I’m tempted to make a FastMail Electron app just to demonstrate that Electron/HTML/CSS/JS doesn’t need to mean slow and heavy (it just normally does). Later: OK, so on Windows a trivial Electron “just load https://www.fastmail.com/login https://www.fastmail.com/login (and then log in)” app uses ~230MB of RAM. Not what I was hoping for, though it doesn’t surprise me a great deal—Chrome is quite happy to use lots of memory. Interestingly, when I reduce it from 3000×2000 to 1600×1200 (device pixels, it’s a 2× display), it goes down to about 160MB after a bit, and minimised to 180MB or 120MB for the two window sizes. Still very snappy despite this memory usage, though, for FastMail is fast.
- lallysingh 8y agoThat's it? My Gmail tabs used to take 2GB (the last time I checked, years ago).
- chrismorgan 8y agoActually, that was just from just loading Gmail and letting it idle, a couple of weeks back, not actually using it. A year and a half ago, I recall it being more like 125MB, up towards 150MB as it was used. Gmail hasn’t really changed since then, but the Hangouts widget (which is pretty heavy!) might have, and the browser definitely has (I blame it for most of the increase). I haven’t actually used Gmail since around that time. For reference, I’m using the explicit/window-objects/top(…) figure from about:memory. This is not an accurate representation of the full footprint, but is close enough.
- sametmax 8y agoThunderbird takes 425mo of my ram right now.
- tluyben2 8y agoI switched from Thunderbird to Gmail because of that; it was quite bad on my laptop. It often started swapping requiring very long waits or a reboot to get back to work.
- progx 8y agoAsk native thunderbird developers, why Thunderbird take 400 MB of RAM, only after start the programm.
- pjmlp 8y agoBecause Thunderbird is not actually native, it uses Electron's precursor XUL.
- discreditable 8y agoFor comparison, my Thunderbird install with over 60k messages stored locally hits about 220MB.
- bildung 8y agoMy Claws Mail currently uses 56M, multiple IMAP accounts configured, a few thousand mails, just visited all accounts before measuring. I disabled HTML display, though (most HTML is either spam or newsletter fluff in my experience). Claws is GTK2.
- kookoopuffs 8y agoWhy in this day and age are electron apps this big? What happened to memory management? Is this a faulty aspect of JS or electron itself?
- Lord_Zero 8y agoElectron is basically Google Chrome. High memory use has nothing to do with JS. https://en.wikipedia.org/wiki/Electron_(software_framework) https://en.wikipedia.org/wiki/Electron_(software_framework) https://en.wikipedia.org/wiki/Chromium_(web_browser) https://en.wikipedia.org/wiki/Chromium_(web_browser)
- s_kilk 8y agoGiven that it's an Electron app, is there a chance that we could get a Linux build at some point in the future? Great work by the way!
- muszc-master 8y agoYes, multiple people have requested a Linux version and it is coming in the future!
- stedaniels 8y agoI think SyneRyder means what format are you storing emails on disk? If a user uses your email client to download all their pop3 email, is it available in a nice format on disk for whatever reason (backups/file recovery/migration to another client)? Or is it locked up in a custom file format.
- muszc-master 8y agoCurrently it is not a standard format so right now there is no easy import/export - however this is a feature that is coming.
- SyneRyder 8y ago>* I think SyneRyder means what format are you storing emails on disk?* Yup, that's what I wanted to know. Since Thunderbird & Postbox both used the same Mbox Unix format for my 20 year email archive saved on disk, it was very easy to switch between them. And since it's an industry standard, I'm reasonably confident I could export/migrate it to a new email client when I have to - or find someone who has written software to do it.
- sashk 8y agoRecent version of Postbox switched to the Maildir format, which is still, from what I've seen, not production ready in Thunderbird.
- herbst 8y ago> only around 300mb of RAM maximum For a email client that is still more than I ever would accept. Do you hold all conversations in the RAM for searchability or something?
- muszc-master 8y agoNope, most is Chromium overhead and a bug that the Chromium team are working on. (300mb is maximum, when it's just running and doesn't run into any of the bugs it consumes around 170mb on my computer) I expect Chromium to use less and less memory as time progresses, so RAM will probably decrease in the future.
- deleted 8y ago[deleted]
- sp332 8y agoHow much RAM does your current mail client use?
- herbst 8y agoInbox seems to use about 200mb right now. However this is within Chrome and runs several additional plugins. When I use mutt I doubt it goes over 20mb.
- pwg 8y ago28mb But then it is mutt running inside a screen session in an xterm. Screen is using 4m, and the largest xterm open is using 2.4m. So even adding in screen and xterm overhead that's still only 34.4mb.
- dotancohen 8y ago> It's an Electron app, but it is built to use as little RAM as possible It's _either_ an Electron app, _or_ built to use as little RAM as possible. I'm not an Electron hater, but if you are starting out with Electron then you are already at a far disadvantage both technically (see aforementioned RAM usage) and politically (many people won't use them, mostly for the technical reasons). FWIW I use the Telegram client which is an Electron app, but I would never use a text editor (Atom), email client, or other Electron app given an equivalent app based on C[++], Python, or even Java.
- blowski 8y agoCan't you build something "to use as little RAM as possible, given that it's using Electron"?
- dotancohen 8y agoOP says that it uses "only 300 MB" of RAM. For an application that deals with primarily with downloading, uploading, and displaying text. How would you respond to someone saying "I raise small mammals, well small given that they are elephants"?
- d-sc 8y agoI call the F150 pickup I drive small. It is compared to the F350’s and semi that I’ve also driven. In absolute terms it may be big. But for an electron app it’s probably not too bad.
- justtopostthis3 8y agoThis conversation seems more analogous: "I raise elephants, but they are bred to be as small as possible." "They're _either_ elephants, _or_ bred to be as small as possible."
- dotancohen 8y agoI'll accept that! Thank you for the perspective.
- dotancohen 8y agoSome more questions, as I don't see them addressed on the site: 1. Is there an extension architecture, that I might be able to write my own extensions? 2. Can I edit the "From" address on outgoing mail, and will it remember my preferred "From" address on a per-recipient basis? 3. Does it have extensive keyboard shortcut support, or does it require a mouse? 4. Does it work well with both of the Linux clipboards, the standard system one and the X-provided middle-click one? (Other Electron apps, such as Postman, do not)
- muszc-master 8y ago1) No extension architecture right now. Do you have anything in mind you'd like to build? 2) Not at the moment, but it supports multiple email accounts at once and you'll be able to move emails effortlessly between accounts in the near future. 3) Yes, it has extensive keyboard shortcut support 4) It hasn't been released for Linux yet, but once it will, I'll make sure to try to address this issue.
- dotancohen 8y ago> 1) No extension architecture right now. Do you have anything in mind you'd like to build? Not yet, but I assure you that I will! Especially if the answer to the next question is negative... > 2) Not at the moment, but it supports multiple email accounts at once and you'll be able to move emails effortlessly between accounts in the near future. I have literally thousands of "accounts" as I have a catch-all domain that I've been using since 2001. I need the ability to edit the "From" address, minimum. And if I'm going to use the email client regularly, then it needs to remember the "From" address to use on a per-recipient basis. That is what extensions are for! > 3) Yes, it has extensive keyboard shortcut support Terrific! > 4) It hasn't been released for Linux yet, but once it will, I'll make sure to try to address this issue. You are welcome to contact me for testing. muszc-master splat dotancohen spot com.
- _o_ 8y agoOh its electron :( Sorry not for me, please rather make a roundcube replacement out of it.
- gervase 8y ago> Do you prefer not having it in a conversation view? I strongly prefer to disable conversation view, because the time (recency) and time interval (frequency) are obscured, at least from the inbox view of most readers. There is a big difference to me between a thread with 10 emails in one morning, versus one with 9 emails over a week, followed by one this morning.
- on_and_off 8y ago> It's an Electron app, but it is built to use as little RAM as possible, when I run it on my old Macbook Air, it consumes only around 300mb of RAM maximum I feel bad but you have already lost me there :/
- muszc-master 8y agoThat is maximum, normal is around 130 - 170 mb
- ekianjo 8y agoI think the point is that it's better to have something using the native widgets of your OS if possible. It carries much less footprint and it integrates with your OS much more nicely in the end. Webapps running in Electron is just becoming too commonplace.
- RussianCow 8y agoThat also means building a separate UI for every supported OS, which isn't usually feasible for a single developer.
- majewsky 8y agohttps://qt.io https://qt.io
- sincerely 8y agoJust an fyi, it looks like you need to include the www for the link to load.
- RussianCow 8y agoQt also isn't truly native (it renders its own UI components) and shares many of Electron's drawbacks, so it's only marginally better (and means you have to learn an entirely new platform if you're already familiar with web dev).
- WrtCdEvrydy 8y agoConsider Electrino (https://medium.com/dailyjs/put-your-electron-app-on-a-diet-with-electrino-c7ffdf1d6297 https://medium.com/dailyjs/put-your-electron-app-on-a-diet-w...)
- muszc-master 8y agoSounds very interesting, although Ivelope interacts a lot with the OS, and a lot of the Electron API would need to be added.
- maemilius 8y agoFrom what I can tell, Electrino is a dead project. Looks like someone picked up the idea and is making another called Quark (https://github.com/jscherer92/Quark https://github.com/jscherer92/Quark) though.
- jchook 8y agoAwesome app man. 150-300MB seems more than acceptable for a local email client. A pedantic, vocal minority may be over-represented in this thread (it IS HN after all). IMO Electron apps present significant advantages that justify its negligible cost, eg skinnable with CSS, inspected live with a web inspector, cross platform etc.
- majewsky 8y ago> eg skinnable with CSS, inspected live with a web inspector, cross platform etc. All of these have been possible with Qt circa 2006. (There is no inspector out-of-the-box, but KDAB made one that could be injected via LD_PRELOAD.)
- s73v3r_ 8y agoThose are all advantages for the developer. I don't see anything that the user gets for the cost.
- tluyben2 8y agoMore features, faster. My gripe is that I pay 1000 euros for a laptop that will be for 50% consumed by 2 (sometimes even just Slack alone, don't worry) 'because it's convenient for the developer' created apps. The amount of money lost here is staggering ofcourse, but why would devs care as they are not on paying for that. I can totally understand it for a one person shop or an understaffed (underfunded) startup, but companies like Slack are just screwing their users here. Then again, if most of them don't mind that, who are we to complain; it seems to be where we are going. I began taking two laptops; a cheapo chromebook with chromeos to run slack, discord etc in the browser and another one to dev on. Works fine and I don't need to grind my teeth every time I look at top (there is no top as I just run chromeos for ease of use).