mirror of
https://github.com/gnh1201/welsonjs.git
synced 2025-03-12 17:05:14 +00:00
67 lines
3.0 KiB
Markdown
67 lines
3.0 KiB
Markdown
# welsonjs
|
|
WelsonJS - Build a Windows desktop apps with JavaScript, HTML, and CSS based on WSH/HTA
|
|
|
|
## Structure
|
|

|
|
|
|
## Specifications
|
|
- ES5(ECMAScript 5), ES6(ECMAScript 6) compatibility with [es5-shim](https://github.com/es-shims/es5-shim), [es6-shim](https://github.com/es-shims/es5-shim), and [json3](https://bestiejs.github.io/json3/)
|
|
- HTML5/CSS3 compatibility with [html5shiv](https://github.com/aFarkas/html5shiv), [jquery-html5-placeholder-shim](https://github.com/jcampbell1/jquery-html5-placeholder-shim), [respond](https://github.com/scottjehl/Respond), [selectivizr](https://github.com/keithclark/selectivizr), [excanvas](https://github.com/arv/ExplorerCanvas), [html5media](https://html5media.info/), and [modernizr](https://github.com/Modernizr/Modernizr)
|
|
- [module.exports](https://nodejs.org/en/knowledge/getting-started/what-is-require/)(Node) styled module implementation, and managing packages with [NPM(Node Package Manager)](https://www.npmjs.com/)
|
|
- Ready to use on Windows machine immediately. No require additional softwares installation.
|
|
|
|
## Included libraries
|
|
- lib/std (Standard library)
|
|
- lib/system (System library)
|
|
- lib/base64 (BASE64 Encode and Decode)
|
|
- lib/db (Database interface)
|
|
- lib/file (File I/O interface)
|
|
- lib/http (HTTP interface)
|
|
- lib/json (JSON Encode and Decode)
|
|
- lib/registry (Windows Registry interface)
|
|
- lib/security (Security Policy interface)
|
|
- lib/sendmail (example of sendmail)
|
|
- lib/shell (Command Prompt interface)
|
|
- lib/timer (`setTimeout` implementation for not supported environment)
|
|
- lib/powershell (Windows Powershell interface)
|
|
|
|
## Make your own `sayhello` example
|
|
|
|
### 1. Write a file `lib/sayhello-lib.js`
|
|
```
|
|
exports.VERSIONINFO = "sayhello library (sayhello-lib.js) version 0.1
|
|
exports.global = global;
|
|
exports.require = global.require;
|
|
|
|
exports.say = function() {
|
|
console.log("hello");
|
|
}
|
|
```
|
|
|
|
### 2. Write a file `sayhello.js`
|
|
```
|
|
var sayhello = require("lib/sayhello-lib");
|
|
return {
|
|
main: function() {
|
|
sayhello.say();
|
|
}
|
|
};
|
|
```
|
|
|
|
### 3. Execute file on the command prompt
|
|
```
|
|
C:\Users\John\Documents\GitHub\welsonjs> cscript app.js sayhello
|
|
hello
|
|
```
|
|
|
|
## Related projects
|
|
- [gnh1201/wsh-js-gtk](https://github.com/gnh1201/wsh-js-gtk) - GTK GUI ported to Windows Scripting Host - Javascript (Microsoft JScript) (wsh-js)
|
|
- [gnh1201/wsh-json](https://github.com/gnh1201/wsh-json) - JSON stringify/parse (encode/decode) for Windows Scripting Host
|
|
- [redskyit/wsh-appjs](https://github.com/redskyit/wsh-appjs) - require-js and app framework for Windows Scripting Host JavaScript
|
|
- [JohnLaTwC's gist](https://gist.github.com/JohnLaTwC/4315bbbd89da0996f5c08c032b391799) - JavaScript RAT
|
|
- [JSMan-/JS-Framework](https://github.com/JSman-/JS-Framework) - No description
|
|
- [iconjack/setTimeout-for-windows-script-host](https://github.com/iconjack/setTimeout-for-windows-script-host) - Replacement for the missing setTimeout and clearTimeout function in Windows Script Host
|
|
|
|
## Contact me
|
|
- gnh1201@gmail.com
|