Because all client and Node.js logic is encapsulated in a single Electron app, Keypunch can run on corporate laptops behind the firewall. Because it uses mainframe-job
to abstract away the details of interfacing with the mainframe's Job Entry Subsystem, Keypunch supports the long-tail of back-leveled z/OS systems. The goal is to help your developers learn to develop without a SysGen or other major impacts to your core business apps.
While this is a work in progress focused on delivering an initial MVP, this app offers a foundational platform that may be eventually enhanced to provide features such as:
- lessons for PL/1, COBOL, REXX, FORTRAN, HLASM, etc. that run entirely on the client app by parsing the JES output.
- enhancement to support z/VSE
- Use of socket.io to provide remote pair-programming for two corporate employees over the intranet.
- Gamification and Badges to encourage learning without compromising core business data.
TODO
- Note: requires a node version >= 6 and an npm version >= 3.
- If you have installation or compilation issues with this project, please see the Electron React Boilerplate debugging guide
First, clone the repo via git:
git clone https://github.com/spmcbride1201/keypunch-electron.git your-project-name
And then install dependencies.
$ cd your-project-name && npm install
💡 In order to remove boilerplate sample code, simply run npm run cleanup
. After this is run, the initial sample boilerplate code will be removed in order for a clean project for starting custom dev
Run these two commands simultaneously in different console tabs.
$ npm run hot-server
$ npm run start-hot
or run two servers with one command
$ npm run dev
To package apps for the local platform:
$ npm run package
To package apps for all platforms:
First, refer to Multi Platform Build for dependencies.
Then,
$ npm run package-all
To package apps with options:
$ npm run package -- --[option]
To run the application without packaging run
$ npm run build
$ npm start
To run End-to-End Test
$ npm run build
$ npm run test-e2e
- React Desktop
- Electron React Boilerplate
- Electron
- React
- Redux
- React Router
- Webpack
- React Transform HMR
- Devtron
- electron-debug
- React Developer Tools
- electron-devtools-installer
- Redux DevTools
- http://www.ibm.com/support/knowledgecenter/SSLTBW_2.1.0/com.ibm.zos.v2r1.halu001/intfjesexample.htm
- http://www2.latech.edu/~acm/helloworld/mvsjcl.html
MIT © Sean McBride