welsonjs/README.md

70 lines
3.1 KiB
Markdown
Raw Normal View History

2020-06-28 14:19:26 +00:00
# welsonjs
2020-07-21 02:48:03 +00:00
WelsonJS - Build a Windows desktop apps with JavaScript, HTML, and CSS based on WSH/HTA
2020-07-05 02:49:10 +00:00
## Structure
2020-07-07 22:47:31 +00:00
![Structure of WelsonJS](app/assets/img/structure.png)
2020-07-21 02:56:37 +00:00
## Specifications
- ES5(ECMAScript 5), ES6(ECMAScript 6) compatibility with [es5-shim](https://catswords.re.kr/go/es5shim), [es6-shim](https://catswords.re.kr/go/es6shim), and [json3](https://catswords.re.kr/go/json3)
- HTML5/CSS3 compatibility with [html5shiv](https://catswords.re.kr/go/html5shiv), [jquery-html5-placeholder-shim](https://catswords.re.kr/go/placeholdershim), [respond](https://catswords.re.kr/go/respondjs), [selectivizr](https://catswords.re.kr/go/selectivizrjs), [excanvas](https://catswords.re.kr/go/excanvasjs), [html5media](https://catswords.re.kr/go/html5media), and [modernizr](https://catswords.re.kr/go/modernizrjs)
- [module.exports](https://catswords.re.kr/go/whatisrequire)(Node) styled module implementation, and managing packages with [NPM(Node Package Manager)](https://catswords.re.kr/go/npmjs)
2020-07-21 04:50:54 +00:00
- Ready to use on Windows machine immediately. No require additional softwares installation.
2020-07-21 02:56:37 +00:00
2020-07-07 22:47:31 +00:00
## Included libraries
2020-07-19 06:36:24 +00:00
- 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)
2020-07-21 10:58:07 +00:00
- lib/sendmail (Sendmail interface with 3rdparty)
2020-07-19 06:36:24 +00:00
- lib/shell (Command Prompt interface)
- lib/timer (`setTimeout` implementation for not supported environment)
- lib/powershell (Windows Powershell interface)
2020-07-23 06:08:38 +00:00
- lib/service (Windows Service interface)
- lib/autohotkey ([AutoHotKey](https://catswords.re.kr/go/autohotkey) interface)
- lib/autoit3 ([AutoIt3](https://catswords.re.kr/go/autoit3) interface)
2020-07-05 02:49:32 +00:00
2020-07-21 04:10:36 +00:00
## Make your own `sayhello` example
2020-07-21 04:10:15 +00:00
2020-07-21 04:13:41 +00:00
### 1. Write a file `lib/sayhello-lib.js`
2020-07-21 04:10:15 +00:00
```
2020-07-21 04:14:27 +00:00
exports.VERSIONINFO = "sayhello library (sayhello-lib.js) version 0.1
2020-07-21 04:10:15 +00:00
exports.global = global;
exports.require = global.require;
exports.say = function() {
console.log("hello");
}
```
2020-07-21 04:13:41 +00:00
### 2. Write a file `sayhello.js`
2020-07-21 04:10:15 +00:00
```
2020-07-21 04:10:55 +00:00
var sayhello = require("lib/sayhello-lib");
2020-07-21 05:52:42 +00:00
return {
main: function() {
sayhello.say();
}
};
2020-07-21 04:10:15 +00:00
```
2020-07-21 04:13:41 +00:00
### 3. Execute file on the command prompt
2020-07-21 04:10:15 +00:00
```
2020-07-21 04:13:41 +00:00
C:\Users\John\Documents\GitHub\welsonjs> cscript app.js sayhello
2020-07-21 04:10:15 +00:00
hello
```
2020-07-08 08:36:14 +00:00
## Related projects
- [gnh1201/wsh-js-gtk](https://catswords.re.kr/go/wshjsgtk) - GTK GUI ported to Windows Scripting Host - Javascript (Microsoft JScript) (wsh-js)
- [gnh1201/wsh-json](https://github.com/gnh1201/wshjson) - JSON stringify/parse (encode/decode) for Windows Scripting Host
- [redskyit/wsh-appjs](https://catswords.re.kr/go/wshappjs) - require-js and app framework for Windows Scripting Host JavaScript
- [JohnLaTwC's gist](https://catswords.re.kr/go/johnlatwcgist) - JavaScript RAT
- [JSMan-/JS-Framework](https://catswords.re.kr/go/jsmanfw) - No description
- [iconjack/setTimeout-for-windows-script-host](https://catswords.re.kr/go/wshtimer) - Replacement for the missing setTimeout and clearTimeout function in Windows Script Host
2020-07-08 08:36:14 +00:00
2020-07-05 02:49:32 +00:00
## Contact me
- gnh1201@gmail.com