Switch branches/tags
windows-release-stable-10.0.1202.0 windows-release-stable-10.0.1201.0 windows-release-stable-10.0.1200.0 windows-release-beta-10.0.1113.0 windows-release-beta-10.0.1112.0 windows-release-beta-10.0.1111.0 windows-release-beta-10.0.1110.0 windows-release-beta-10.0.1109.0 windows-release-beta-10.0.1108.0 windows-release-beta-10.0.1107.0 windows-release-beta-10.0.1106.0 windows-release-beta-10.0.1105.0 windows-release-beta-10.0.1104.0 windows-release-beta-10.0.1103.0 windows-release-beta-10.0.1102.0 windows-release-beta-10.0.1101.0 windows-release-beta-10.0.1100.0 windows-release-beta-10.0.1099.0 windows-release-beta-10.0.1098.0 windows-release-beta-10.0.1097.0 windows-release-beta-10.0.1096.0 windows-release-beta-10.0.1095.0 windows-release-beta-10.0.1094.0 windows-release-beta-10.0.1093.0 windows-release-beta-10.0.1092.0 windows-release-beta-10.0.1091.0 windows-release-beta-10.0.1090.0 windows-release-beta-10.0.1087.0 windows-release-beta-10.0.1086.0 windows-release-beta-10.0.1085.0 windows-release-beta-10.0.1084.0 windows-release-beta-10.0.1083.0 windows-release-beta-10.0.1082.0 windows-release-beta-10.0.1081.0 windows-release-beta-10.0.1080.0 windows-release-beta-10.0.1079.0 windows-release-beta-10.0.1078.0 windows-release-beta-10.0.1077.0 windows-release-beta-10.0.1076.0 windows-release-beta-10.0.1075.0 windows-release-beta-10.0.1074.0 windows-release-beta-10.0.1073.0 windows-release-beta-10.0.1072.0 windows-release-beta-10.0.1071.0 windows-release-beta-10.0.1070.0 windows-release-beta-10.0.1066.0 windows-release-beta-10.0.1061.0 windows-release-beta-10.0.1060.0 windows-release-beta-10.0.1059.0 windows-release-beta-10.0.1058.0 windows-release-beta-10.0.1057.0 windows-release-beta-10.0.1056.0 windows-release-beta-10.0.1055.0 windows-release-alpha-11.0.46.0 windows-release-alpha-11.0.45.0 windows-release-alpha-11.0.44.0 windows-release-alpha-11.0.43.0 windows-release-alpha-11.0.40.0 windows-release-alpha-11.0.39.0 windows-release-alpha-11.0.38.0 windows-release-alpha-11.0.37.0 windows-release-alpha-11.0.36.0 windows-release-alpha-11.0.35.0 windows-release-alpha-11.0.34.0 windows-release-alpha-11.0.33.0 windows-release-alpha-11.0.32.0 windows-release-alpha-11.0.31.0 windows-release-alpha-11.0.30.0 windows-release-alpha-11.0.29.0 windows-release-alpha-11.0.28.0 windows-release-alpha-11.0.27.0 windows-release-alpha-11.0.26.0 windows-release-alpha-11.0.25.0 windows-release-alpha-11.0.24.0 windows-release-alpha-11.0.23.0 windows-release-alpha-11.0.22.0 windows-release-alpha-11.0.21.0 windows-release-alpha-11.0.20.0 windows-release-alpha-11.0.19.0 windows-release-alpha-11.0.18.0 windows-release-alpha-11.0.17.0 windows-release-alpha-11.0.15.0 windows-release-alpha-11.0.14.0 windows-release-alpha-11.0.13.0 windows-release-alpha-11.0.12.0 windows-release-alpha-11.0.11.0 windows-release-alpha-11.0.10.0 windows-release-alpha-11.0.9.0 windows-release-alpha-11.0.8.0 windows-release-alpha-11.0.7.0 windows-release-alpha-11.0.6.0 windows-release-alpha-11.0.5.0 windows-release-alpha-11.0.4.0 windows-release-alpha-11.0.3.0 windows-release-alpha-11.0.2.0 windows-release-alpha-10.0.1053.0 windows-release-alpha-10.0.1052.0 windows-release-alpha-10.0.1051.0 windows-release-alpha-10.0.1050.0 windows-release-alpha-10.0.1049.0
Nothing to show
Find file History
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
..
Failed to load latest commit information.
samples
source
testing
unit_tests
.editorconfig
.gitattributes
.gitignore
LICENSE
NOTICE
README.md
history.md
index.html
package-lock.json
package.json

README.md

Keyman Web

The Original Code is (C) 2017-2018 SIL International

Minimum Web Compilation Requirements

  • Java 7+ (required by the Google Closure Compiler)
    • This can be ignored for Keyman Developer builds.
  • A local installation of Node.js v8.9+.
    • Builds will call npm install to automatically install further necessary build dependencies.

    • Linux users can run the following to update to LTS version of nodejs

sudo apt-get install python-software-properties
curl -sL https://deb.nodesource.com/setup_8.x | sudo -E bash -
sudo apt-get install nodejs

The following folders contain the distribution for KeymanWeb:

source				Source code
unit_tests      	Automated testing resources

intermediate    	Intermediate compiled code; TypeScript source is compiled here before it is minified.
release/web			Fully-compiled KeymanWeb modules for testing
release/embedded	Fully-compiled KMEA/KMEI modules for inclusion in mobile app builds
release/unminified/web       Fully-compiled but non-minified KeymanWeb modules
release/unminified/embedded  Fully-compiled KMEA/KMEI modules for inclusion in mobile app builds

samples				Sample pages demonstrating ways to link with KeymanWeb
testing     		Test-case web-pages for various aspects of KeymanWeb functionality
unit_tests			A Node-driven test suite for automated testing of KeymanWeb

Usage

Open index.html or samples/index.html in your browser. Be sure to compile KeymanWeb before viewing the pages.

Refer to the samples for usage details.

To view pages using compiled KeymanWeb,

  1. cd to keyman/web/source
  2. Run ./build.sh

build.sh options:

  • -ui
    • to compile desktop user interface modules to output folder
  • -test
    • to compile for testing without copying resources or updating the saved version number.
  • -embed
    • to compile only the KMEA/KMEI embedded engine.
  • -web
    • to compile only the KeymanWeb engine.
  • -debug_embedded
    • to compile a readable version of the embedded KMEA/KMEI code
  • -no_minify
    • to disable the minified '/release/web' and '/release/embedded' build sections.
    • the '/release/unminified/web' and '/release/unminified/embedded' folders will still be built.
  • -clean
    • to erase pre-existing build products before the build.

If more than one target is specified, the last one will take precedence.

Unit Testing

Before running unit tests on KeymanWeb, first run ./build.sh according to the instructions above.

Once the build is complete, running npm test will run the unit testing suite on your local machine in-browser. Alternatively, see unit_tests/test.sh, which the former command executes.