How to develop Desktop Apps using HTML/CSS/JavaScript?
You may start with Titanium for desktop dev. Also you may have a look at Chromium Embedded Framework. It's basically a web browser control based on chromium.
It's written in C++ so you can do all the low level OS stuff you want(Growl, tray icons, local file access, com ports, etc) in your container app, and then all the application logic and gui in html/javascript. It allows you to intercept any http request to either serve local resources or perform some custom action. For example, a request to http://localapp.com/SetTrayIconState?state=active could be intercepted by the container and then call the C++ function to update the tray icon.
It also allows you to create functions that can be called directly from JavaScript.
It's very difficult to debug JavaScript directly in CEF. There's no support for anything like Firebug.
You may also try AppJS.com (Helps to build Desktop Applications. for Linux, Windows and Mac using HTML, CSS and JavaScript)
Also, as pointed out by @Clint, the team at brackets.io (Adobe) created an awesome shell using Chromium Embedded Framework that makes it much easier to get started. It is called the brackets shell: github.com/adobe/brackets-shell Find out more about it here: clintberry.com/2013/html5-desktop-apps-with-brackets-shell
HTML, JS, and CSS Desktop applications
So, the main idea behind creating JS, HTML, CSS apps that feel native is to write some sort of desktop application with embedded browser control that runs your HTML and JS. Nowadays, there are a lot of different tools to do so and each of them offers unique capabilities.
- AppJS - a framework to build cross-platform desktop apps using JS, HTML, CSS. It uses Node.js as the backbone.
- Electron - much like AppJS but built on top of Chrome's V8.
- Chromium Embedded Framework (CEF) - a simple framework for embedding Chromium-based browsers in other applications.
- NW.js - an app runtime based on Chromium and node.js. You can write native apps in HTML and JavaScript with NW.js. It also lets you call Node.js modules directly from the DOM and enables a new way of writing native applications with all Web technologies.
Of course, there are a lot of other great tools.
Create A Windows 10 App Using HTML, CSS JavaScript
To create an application using web technologies, such as HTML, CSS, and JavaScript, I will recommend you start looking into the Electron Framework which allows you to use web technologies resources for app development.
Multi-platform Desktop application frameworks using HTML, CSS, and JavaScript
Yes, it could be Electron.
f you can build a website, you can build a desktop app. Electron is a framework for creating native applications with web technologies like JavaScript, HTML, and CSS. It takes care of the hard parts so you can focus on the core of your application.
In fact, there is a lot of applications made using web technologies (HTML/JS):
You can take a look at https://electron.atom.io/
How to create website-based desktop application for Windows, Linux and MacOS?
Electron is a very popular approach for this sort of thing. Using front-end code (HTML, JS, CSS), you can construct an application (which essentially runs a webpage - or few) and then make it executable in any environment.
If you need any (privileged) backend code, you can write it in Node (in Electron's main process) and have it communicate to the page script through the preload script.
Skills needed for a desktop application development
You can use for example ElectronJS
If you can build a website, you can build a desktop app. Electron is a
framework for creating native applications with web technologies like
JavaScript, HTML, and CSS. It takes care of the hard parts so you can
focus on the core of your application.
This question is answered many times, do check this question. It also lists other options in this matter.
Related Topics
How to Terminate the Script in JavaScript
Url Encode a String in Jquery for an Ajax Request
Reactjs Async Rendering of Components
Highlight Text Range Using JavaScript
How to Maintain State After a Page Refresh in React.Js
Good Ways to Improve Jquery Selector Performance
Is There a Good JavaScript Minifier
Getting Blob Data from Xhr Request
JavaScript Parser in JavaScript
Count Number of Matches of a Regex in JavaScript
Javascript/Jquery: Test If Window Has Focus
Detect When an Image Fails to Load in JavaScript
JavaScript Sort Function. Sort by First Then by Second
How to Insert a Character After Every N Characters in JavaScript
Date VS New Date in JavaScript
Rails 4 Turbo-Link Prevents Jquery Scripts from Working
How to Prevent Default Event Handling in an Onclick Method
How to Move All HTML Element Children to Another Parent Using JavaScript