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.

Atom Shell: Cross-platform desktop application shell

182 pointsby kartikkumarover 10 years ago

19 comments

gnufiedover 10 years ago
At my workplace we evaluated atom-shell for couple of desktop apps we were building but we found various shortcomings:<p>1. Limited integration with desktop environment. Have a look at System tray integration for example, <a href="https://github.com/atom/atom-shell/blob/master/docs/api/tray.md" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;atom&#x2F;atom-shell&#x2F;blob&#x2F;master&#x2F;docs&#x2F;api&#x2F;tray...</a> in many cases it is just too simplistic.<p>2. Another thing we learnt the hard way is, a lot of JS charting libraries are not meant for plotting streaming data for long period of time. We for example found that, most d3js based charting libraries start to balloon in memory usage if left running for &gt; 1 hour or so.<p>3. Large executables.<p>It is still a nice platform to develop on! But if you are stuck with performance problems or something, coding your way out of it is way harder (unless you are willing to get your hands dirty with atom-shell code itself).<p>EDIT: So we ended up using Qt. in fact, a lot of JS libraries can be used in Qt via QML, for example - <a href="https://github.com/jwintz/qchart.js/tree/master" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;jwintz&#x2F;qchart.js&#x2F;tree&#x2F;master</a>.
评论 #8795264 未加载
评论 #8795012 未加载
评论 #8794448 未加载
评论 #8794419 未加载
heavenlyhashover 10 years ago
How portable is this, exactly?<p>Previously, node-webkit looked like a great contender for a universally shippable desktop UI system, but it actually falls on several platforms due to invalid presumptions about locally available dynamically linked libraries [1]. It would be great to see an up-front document about portability promises.<p>Is it possible to use other languages to drive the rendering via a linked API? Thrust [2] did a good start on defining an API for using the UI components from multiple languages, but it still relies on TCP sockets -- as far as I can tell, there&#x27;s no way to make my application load assets from &quot;bundle:&#x2F;&#x2F;&quot; and redirect that to custom handler code while forbidding other network access, and the use of a local TCP socket to communicate between the UI and the main application means there&#x27;s also major reason to be concerned about CSRF attacks on localhost. We should be able to build desktop UIs without these problems. Is atom-shell pushing forward on any of these issues, and if so is there any documentation on how?<p>[1] <a href="https://github.com/rogerwang/node-webkit/wiki/The-solution-of-lacking-libudev.so.0" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;rogerwang&#x2F;node-webkit&#x2F;wiki&#x2F;The-solution-o...</a><p>[2] <a href="https://github.com/breach/thrust" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;breach&#x2F;thrust</a>
评论 #8796282 未加载
评论 #8797224 未加载
评论 #8796230 未加载
xpaulbettsxover 10 years ago
We&#x27;re currently using Atom Shell to build the Slack Windows application and everything going really well; the lead developer of Atom Shell is really talented &#x2F; responsive to issues. We&#x27;ve been open-sourcing interesting pieces of the app to help the community get started building their own production-level Atom Shell apps as well:<p><a href="https://github.com/atom/atom-shell-starter" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;atom&#x2F;atom-shell-starter</a><p><a href="https://github.com/paulcbetts/grunt-build-atom-shell" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;paulcbetts&#x2F;grunt-build-atom-shell</a>
xtrumanxover 10 years ago
Previous discussion of atom-shell and other similar software here: <a href="https://news.ycombinator.com/item?id=8729791" rel="nofollow">https:&#x2F;&#x2F;news.ycombinator.com&#x2F;item?id=8729791</a>
mattdeslover 10 years ago
Tools like atom-shell and thrust[1] may not integrate into the OS as smoothly as Qt&#x2F;etc but they do show a lot of promise for web tooling. e.g. shader authoring tools, motion&#x2F;animation editors, WebAudio API editors, etc.<p>Summed up my thoughts here: <a href="http://mattdesl.svbtle.com/motion-graphics" rel="nofollow">http:&#x2F;&#x2F;mattdesl.svbtle.com&#x2F;motion-graphics</a><p>[1] - <a href="https://github.com/breach/thrust" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;breach&#x2F;thrust</a>
pjmlpover 10 years ago
It just feels wrong. Better go with Qt&#x2F;QML or JavaFX&#x2F;Nashorn.
评论 #8794291 未加载
评论 #8795939 未加载
评论 #8794744 未加载
seivanover 10 years ago
Looks like <a href="https://github.com/appjs/appjs" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;appjs&#x2F;appjs</a> and <a href="https://github.com/sihorton/appjs-deskshell/" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;sihorton&#x2F;appjs-deskshell&#x2F;</a><p>(If you want to look at alternatives)
BruceMover 10 years ago
Make sure you also check out the starter app!<p><a href="https://github.com/atom/atom-shell-starter" rel="nofollow">https:&#x2F;&#x2F;github.com&#x2F;atom&#x2F;atom-shell-starter</a>
frankwilesover 10 years ago
We&#x27;ve been busy developing a product with atom-shell that will be released next year. Works great, no complaints so far anyway!
评论 #8793552 未加载
评论 #8793609 未加载
incanus77over 10 years ago
Mapbox built their latest map design studio on Atom Shell: <a href="https://www.mapbox.com/mapbox-studio/" rel="nofollow">https:&#x2F;&#x2F;www.mapbox.com&#x2F;mapbox-studio&#x2F;</a>
WhiteNoiz3over 10 years ago
How does this compare to Node-webkit?
评论 #8793955 未加载
评论 #8795083 未加载
Rotten194over 10 years ago
I been using node-webkit + THREE.js for an app, and really enjoying it. This looks interesting, but are there any major differences between in and node-webkit that would interest me in switching? There doesn&#x27;t seem to be a comparison section in the readme.
评论 #8795665 未加载
评论 #8796010 未加载
评论 #8796292 未加载
thomasfoster96over 10 years ago
I initially started using node-webkit a couple of weeks ago but I decided to have a look atom-shell last week.<p>I miss how thorough, relative to atom-shell, the docs are for node-webkit, but atom-shell does seem more mature and thoughtful in the way things have been implemented. Nide-webkit&#x27;s iframe changes are a bit ugly, but atom-shell&#x27;s webview element is nice and clean, plus it looks as though Mozilla want to standardise something similar.<p>Has anyone seen issues with the separate browser and application processes? I haven&#x27;t had any yet but I feel that I might run into issues soon.
markus2012over 10 years ago
Interesting!<p>FYI atom-shell seems to work better with node v0.11 than node-webkit if you&#x27;re trying to build little admin&#x2F;maintenance utilities that need sudo.<p>node-webkit gets in the way of the sudo working.
评论 #8795143 未加载
评论 #8794608 未加载
yumrajover 10 years ago
Does something similar exist for iOS and Android apps? In other words, could someone opine on what&#x27;s the best way to create mobile apps that are wrappers around web apps. Is the common approach to create a native app with embedded browser or is there some other way?
评论 #8793869 未加载
评论 #8794817 未加载
评论 #8793863 未加载
评论 #8793866 未加载
hitlin37over 10 years ago
is mozilla missing out on the scene of desktop app? what&#x27;s next after xulrunner?<p>Also, i have a legacy app written with xpcom like components. Is atom shell a right platform if i decide to re-write the old xulrunner based application with new platform such as atom-shell, node-webkit or qt may be?<p>Are there any licensing issue with atom-shell for desktop apps?
niutechover 10 years ago
Cool, but why reinvent the wheel rather than use Brackets Shell, Node Webkit, CEF or QtWebKit?
hitlin37over 10 years ago
what about support for other architecture than x86. I saw some support node-webkit for armv7. Anyone have experience with desktop app running on arm based os such as ubuntu arm.
WorldWideWayneover 10 years ago
It seems like a very nice kit, but I think I&#x27;d rather just use the native WebView that comes with the OS. Once you embed the browser engine, everything else is easy and you have a lot more flexibility with what can be done natively.
评论 #8794148 未加载