welsonjs.toolkit
WelsonJS - Build a Windows app on the Windows built-in JavaScript engine
Science Score: 49.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
○CITATION.cff file
-
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
✓DOI references
Found 4 DOI reference(s) in README -
✓Academic publication links
Links to: zenodo.org -
○Committers with academic emails
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (8.8%) to scientific vocabulary
Keywords
Keywords from Contributors
Repository
WelsonJS - Build a Windows app on the Windows built-in JavaScript engine
Basic Info
- Host: GitHub
- Owner: gnh1201
- License: gpl-3.0
- Language: JavaScript
- Default Branch: master
- Homepage: https://catswords.social/@catswords_oss
- Size: 25.8 MB
Statistics
- Stars: 390
- Watchers: 9
- Forks: 23
- Open Issues: 76
- Releases: 69
Topics
Metadata Files
README.md
welsonjs
WelsonJS - Build a Windows app on the Windows built-in JavaScript engine.

Now, You can build a Windows desktop app with JavaScript, TypeScript, CoffeeScript, ReScript, and HTML/CSS on Windows built-in ECMAScript engine.
WelsonJS = Windows + Electron-like + Javascript(JS) + :heart:Contributions
- :kissing_cat: Download Latest WelsonJS Launcher (ics.catswords.net)
- :rocket: Launch the WelsonJS environment on Microsoft Azure (azuremarketplace.microsoft.com)
Note: The default license for this project is GPL 3.0. However, if the GPL 3.0 license is not compatible with Microsoft products, it is subject to the MS-RL license.
Sponsors
- :octocat: GitHub Sponsors, :coffee: Buy me a coffee
SerpApi: Search API - Scrape search engines results with simple API.
Open SW Portal, NIPA National IT Industry Promotion Agency(정보통신산업진흥원)
Free code signing provided by SignPath.io, certificate by SignPath Foundation
F1Security(에프원시큐리티) provides industry-leading web security services.
Microsoft ISV Success Program, Grow your business with powerful tools.- :zap: Integrations (e.g., Aviation, Shopping)...
System Requirements
- Operating Systems: Windows XP SP3 or later (Currently, Windows 11 24H2)
- For systems running Windows 2000 or earlier versions (e.g., 95, 98, Me), please contact us separately.
Why Choose WelsonJS?
WelsonJS is an advanced JavaScript framework designed to operate in extreme conditions where conventional solutions may fail. Unlike traditional JavaScript frameworks, WelsonJS focuses on executing scripts in constrained environments, ensuring reliable performance even with minimal system resources.
Key Features
- Lightweight and Efficient: Optimized for environments with limited computing power, WelsonJS delivers efficient script execution without unnecessary overhead.
- Windows ECMAScript Compatibility: Designed to run seamlessly on Windows-based systems, adhering to the ECMAScript standard while maintaining lightweight execution.
- Standalone Execution: Unlike well-known JavaScript runtimes, which require external dependencies, a WelsonJS application can operate as a self-contained app, making it suitable for embedded systems and isolated environments.
- Security-Oriented: Built with security in mind, ensuring controlled execution of scripts without compromising system integrity.
- Minimalist Design: WelsonJS strips away unnecessary complexities, focusing on core functionalities that maximize performance and reliability.
Use Cases
- Legacy System Integration: WelsonJS provides a practical solution for running JavaScript on older Windows environments where modern frameworks are not feasible.
- Automation and Scripting: Ideal for executing scripts in constrained environments, enabling automated workflows and system-level scripting.
- Embedded Applications: Suitable for devices and systems with strict resource constraints, such as industrial controllers and embedded platforms.
- Security-Focused Environments: Useful in security-sensitive applications where dependencies on external network connections are limited.
- Office Automation: Suitable for office automation tasks using Microsoft Office and various LLM-based AI (such as ChatGPT).
WelsonJS is tailored for developers who need a reliable, lightweight JavaScript framework in environments where traditional solutions are impractical. Whether working with legacy systems, embedded devices, or security-critical applications, WelsonJS ensures that JavaScript remains a viable and efficient option.
Structure

Specifications
- Built-in transpilers: TypeScript, Rescript, CoffeeScript 2, LiveScript
- Ready to use on Windows machine immediately. No additional software installation is required.
- WelsonJS Launcher: Manage instances (Like a container), User-defined variable editor, Microsoft Monaco Editor and React (Pre-embedded rich code editor), Microsoft Copilot, and Azure AI Services, Network tools (Whois, DNS Query, Criminal IP CTI) on the code editor.
- ES5(ECMAScript 5), XML, JSON, YAML compatibility: core-js, JSON2.js, js-yaml
- HTML5 compatibility on the built-in HTML rendering engine: html5shiv, jquery-html5-placeholder-shim, Respond, selectivizr, ExplorerCanvas, Modernizr
- Classical CSS Frameworks: cascadeframework, golden-layout
- WYSIWYG HTML Editor: summernote
- Included libraries: jQuery, jQuery UI, jquery-toast-plugin, squel, jsrender, linq, pegjs, numbers.js
- Compatible with modern JavaScript specifications: module.exports, CommonJS, UMD compatibility, NPM(Node Package Manager) compatibility
- Support a device debugging protocol clients: Chrome DevTools Protocol, ADB(Android Debug Bridge)
- RPC(Remote Procedure Call) protocol clients: gRPC, JSON-RPC 2.0
- Various types of HTTP clients: XHR(MSXML), cURL, BITS, CERT, Web Proxy, SEO/SERP
- The native toolkit for Windows environments: Write a Windows Service Application with JavaScript, Control a window handle, Cryptography (e.g., ISO/IEC 18033-3:2010 aka. HIGHT), Named Shared Memory based IPC, NuGet package
- Generative AI integrations: Multiple LLM and sLLM (e.g., ChatGPT, Claude, ...)
- Aviation Data integrations: AviationStack, SerpApi Google Flights API
- VM infrastructure tool integrations: OVFTool for Broadcom/VMware infrastructures
- :fire: NEW! Windows bulit-in database engine AKA. ESENT (ESE) database interface library (WelsonJS.Esent)
- Everything you can imagine.
Quick start
1. Write a file lib/sayhello.js
```js // lib/sayhello.js function say() { console.log("hello"); }
exports.say = say;
exports.VERSIONINFO = "SayHello (sayhello.js) version 0.1"; exports.AUTHOR = "gnh1201@catswords.re.kr"; exports.global = global; exports.require = global.require; ```
2. Write a file sayhello.js
```js // sayhello.js var SayHello = require("lib/sayhello");
function main() { console.log("calling say()"); SayHello.say(); console.log("ended say()"); }
exports.main = main; ```
3. Execute script on the console
cmd
C:\Users\JohnDoe\Documents\GitHub\welsonjs> cscript app.js sayhello
calling say()
hello
ended say()
How to release my application?
The WelsonJS framework suggests the following application release methods:
- Compress to Zip, and use the launcher: Compress the files and directories necessary for running the project into a Zip file, and distribute it along with the WelsonJS Launcher.
- Build a setup file: Use Inno Setup. The setup profile (the
setup.issfile) is already included. - Copy all directories and files: This is the simplest and most straightforward method.
Screenshots







Thanks to
- :heart: Artwork (Logo image): @druidesse
- :heart: Artwork (Cover image): @_bag0@x.com
- :heart: Special Contributors: @hcho3, :octocat: GitHub Sponsors
- :sunglasses: Heavy-industry specialized CSP(Cloud Service Provider) in Republic of Korea - Use case development
- :sunglasses: Live-commerce specialized online advertisement companies in Republic of Korea - Use case development
- :sunglasses: Information security companies in Republic of Korea - Use case development
- :sunglasses: Travel planning(e.g., Airlines, Hotels, Ticketing) related companies - Use case development
- :sunglasses: Probability-based game prediction in a data analytics company - Use case development
- :eyes: Facebook Group "Javascript Programming"(javascript4u)
- :eyes: morioh.com
- :eyes: CSDN
- :eyes: Qiita - Knowledge-base about WSH environment
- :sunglasses: Redsky Software - PoC(Proof of Concept) of the CommonJS on WSH environment
- :sunglasses: Inspired by a small-sized JavaScript payload demonstrated by a cybersecurity related group.
- :sunglasses: Inspired by the use of Named Shared Memory in a cross-runtime IPC implementation written by the unidentified developer.
- :eyes: Fediverse
- :eyes: Hacker News
- :eyes: WebToolsWeekly
- :eyes: GeekNews in GeekNews Weekly (2024-09-30 ~ 2024-10-06)
- :eyes: daily.dev
- :eyes: PitchHut
- :eyes: Disquiet
- :eyes: Node Weekly
- :eyes: Zhouexin (周e信)
Report abuse
Join the community
I am always open. Collaboration, opportunities, and community activities are all welcome.
- ActivityPub @catswords_oss@catswords.social
- XMPP catswords@conference.omemo.id
- Join Catswords OSS on Microsoft Teams (teams.live.com)
- Join Catswords OSS #welsonjs on Discord (discord.gg)
Offline Distribution
You may request offline distribution if you are in a restricted environment, such as one without internet access or with specific security requirements.
Special channels
- A paid consultation channel (m.expert.naver.com) is available for Korean(한국어) region.
License
Owner
- Name: Namhyeon, Go
- Login: gnh1201
- Kind: user
- Location: Republic of Korea
- Company: Catswords Research
- Website: https://catswords.com
- Twitter: gnh1201
- Repositories: 221
- Profile: https://github.com/gnh1201
Your watermelon OPEN UP!
GitHub Events
Total
- Create event: 17
- Issues event: 81
- Release event: 11
- Watch event: 136
- Member event: 2
- Issue comment event: 499
- Push event: 536
- Pull request event: 150
- Pull request review comment event: 309
- Pull request review event: 243
- Gollum event: 33
- Fork event: 7
Last Year
- Create event: 17
- Issues event: 81
- Release event: 11
- Watch event: 136
- Member event: 2
- Issue comment event: 499
- Push event: 536
- Pull request event: 150
- Pull request review comment event: 309
- Pull request review event: 243
- Gollum event: 33
- Fork event: 7
Committers
Last synced: 7 months ago
Top Committers
| Name | Commits | |
|---|---|---|
| Namhyeon, Go | g****1@g****m | 2,267 |
| Jihoon Yi | 4****e | 8 |
| dependabot[bot] | 4****] | 6 |
| Scarlet | a****n@n****m | 5 |
| Theodore Tsirpanis | t****o@t****r | 4 |
| fossabot | b****s@f****o | 1 |
| Soumt | r****5@n****m | 1 |
| Ikko Eltociear Ashimine | e****r@g****m | 1 |
Committer Domains (Top 20 + Academic)
Issues and Pull Requests
Last synced: 6 months ago
All Time
- Total issues: 185
- Total pull requests: 167
- Average time to close issues: 3 months
- Average time to close pull requests: about 12 hours
- Total issue authors: 5
- Total pull request authors: 8
- Average comments per issue: 0.91
- Average comments per pull request: 3.48
- Merged pull requests: 145
- Bot issues: 0
- Bot pull requests: 6
Past Year
- Issues: 69
- Pull requests: 155
- Average time to close issues: 19 days
- Average time to close pull requests: about 4 hours
- Issue authors: 4
- Pull request authors: 6
- Average comments per issue: 0.93
- Average comments per pull request: 3.66
- Merged pull requests: 133
- Bot issues: 0
- Bot pull requests: 0
Top Authors
Issue Authors
- gnh1201 (159)
- md-technosoft (20)
- baramofme (3)
- AddictArts (1)
- eogloblin (1)
Pull Request Authors
- gnh1201 (150)
- dependabot[bot] (8)
- chasca8 (4)
- baramofme (2)
- eltociear (2)
- soumt-r (2)
- fossabot (2)
- teo-tsirpanis (2)
Top Labels
Issue Labels
Pull Request Labels
Packages
- Total packages: 1
-
Total downloads:
- nuget 241 total
- Total dependent packages: 0
- Total dependent repositories: 0
- Total versions: 2
- Total maintainers: 1
nuget.org: welsonjs.toolkit
Native toolkit for WelsonJS framework-based RPA applications.
- Homepage: https://github.com/gnh1201/welsonjs
- License: GPL-3.0-only
-
Latest release: 0.2.7.49
published over 1 year ago
Rankings
Maintainers (1)
Dependencies
- ansi-regex 5.0.1
- ansi-styles 4.3.0
- argparse 2.0.1
- camelcase 5.3.1
- cliui 6.0.0
- color-convert 2.0.1
- color-name 1.1.4
- core-js 3.21.1
- decamelize 1.2.0
- doctrine 3.0.0
- emoji-regex 8.0.0
- entities 2.1.0
- esutils 2.0.3
- excanvas 2.0.0
- file 0.2.2
- find-up 4.1.0
- get-caller-file 2.0.5
- html5media 1.2.1
- html5shiv 3.7.3
- inherits 2.0.4
- is-fullwidth-code-point 3.0.0
- jquery 3.6.0
- jquery-form 4.3.0
- jquery-toast-plugin 1.3.2
- jquery-ui 1.13.2
- js-yaml 4.1.0
- jsrender 1.0.11
- linkify-it 3.0.3
- locate-path 5.0.0
- lodash 4.17.21
- markdown-it 12.3.2
- mdurl 1.0.1
- minimist 1.2.6
- mkdirp 0.5.5
- modernizr 3.12.0
- p-limit 2.3.0
- p-locate 4.1.0
- p-try 2.2.0
- path-exists 4.0.0
- readable-stream 3.6.0
- require-directory 2.1.1
- require-main-filename 2.0.0
- requirejs 2.3.6
- safe-buffer 5.2.1
- set-blocking 2.0.0
- squel 5.13.0
- string-width 4.2.3
- string_decoder 1.3.0
- strip-ansi 6.0.1
- through2 3.0.2
- uc.micro 1.0.6
- util-deprecate 1.0.2
- which-module 2.0.0
- wrap-ansi 6.2.0
- y18n 4.0.3
- yargs 15.4.1
- yargs-parser 18.1.3
- core-js ^3.21.1
- excanvas ^2.0.0
- html5media ^1.2.1
- html5shiv ^3.7.3
- jquery ^3.6.0
- jquery-form ^4.3.0
- jquery-toast-plugin ^1.3.2
- jquery-ui ^1.13.2
- js-yaml ^4.1.0
- jsrender ^1.0.11
- modernizr ^3.12.0
- squel ^5.13.0
- actions/checkout v2 composite
- github/codeql-action/analyze v1 composite
- github/codeql-action/autobuild v1 composite
- github/codeql-action/init v1 composite