Skip to content
Terra Toolkit is a utility module used to facilitate independent development of Terra projects. This toolkit is designed to help support Webdriver.io testing for Terra UI components
JavaScript Other
Branch: master
Clone or download
Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.github Add Dave as a code owner (#342) Oct 23, 2019
bin terra-toolkit v5 (#291) May 31, 2019
config Using DefinePlugin to create global constants for build date/time and… Oct 23, 2019
docker/terra-node node 10 (#314) Jul 19, 2019
docs
scripts Guard against empty scoped value within theme config. (#337) Sep 19, 2019
src/wdio/services Fix Mismatch Tolerance when 0 (#355) Nov 14, 2019
tests Fix Mismatch Tolerance when 0 (#355) Nov 14, 2019
.dockerignore Enable parallel testing during builds (#100) May 16, 2018
.eslintignore terra-toolkit v5 (#291) May 31, 2019
.gitattributes Windows Dev Compatibility (#17) Nov 2, 2017
.gitignore Toolkit V4 (#113) Jun 21, 2018
.npmignore Replace dangerjs with probot-changelog (#308) Jul 1, 2019
.nvmrc node 10 (#314) Jul 19, 2019
.travis.yml Replace dangerjs with probot-changelog (#308) Jul 1, 2019
CHANGELOG.md Fix Mismatch Tolerance when 0 (#355) Nov 14, 2019
CODE_OF_CONDUCT.md Initial Commit. Jun 29, 2017
CONTRIBUTING.md Update CONTRIBUTING.md Mar 28, 2018
CONTRIBUTORS.md [terra-toolkit] Upgraded css-loader to v3.2.0 (#338) Sep 24, 2019
Dockerfile enabling docker dev env (#239) Jan 28, 2019
LICENSE Initial Commit. Jun 29, 2017
NOTICE Update copyright years (#226) Jan 3, 2019
README.md Fix broken documentation links (#319) Aug 2, 2019
babel.config.js terra-toolkit v5 (#291) May 31, 2019
docker-compose.yml Add Firefox and IE Capabilities (#298) Jun 18, 2019
jestConfig.js Add Firefox and IE Capabilities (#298) Jun 18, 2019
package-lock.json Released version 5.13.0 Nov 7, 2019
package.json Released version 5.13.0 Nov 7, 2019
terra.png Toolkit Migration (#1) Jul 12, 2017
wdio.conf.js Add hideInputCaret wdio test helper (#312) Jul 26, 2019

README.md

Terra Toolkit

NPM version License Build Status Dependencies status devDependencies status

Terra Toolkit is a utility module used to facilitate independent development of Terra projects. This toolkit provides build scripts, configurations, and Webdriver Services needed to serve assets, compile webpack, and run webdriver.io tests to streamline development of npm packages.

terra-core, terra-clinical, and terra-framework are a few examples repositories which are utilizing the utilities offered in this package.

terra-dev-site is a node module that extends the configurations offered by toolkit.

Getting Started

  • Install toolkit and its peer dependencies as dev-dependencies with npm:
> npm install --save-dev terra-toolkit webpack webpack-cli webpack-dev-server @babel/cli @babel/core 

To use Terra Toolkit for local webdriver testing, you must install docker on your machine.

Theme Aggregation

Terra Toolkit provides a built-in mechanism for aggregating themes.

See the Theme Aggregation to get started.

Serve Options

Terra Toolkit offers two ways to serve your client side application, serve and serve-static. Serve provides a hot-reloading, development only option via webpack-dev-server, while serve-static is a non-hot-reloading express server. Serve-static supports IE10 and is used in webdriver testing.

See the Serve Guide to get started.

Webdriver.io Utility

Webdriver.io is a framework for writing webdriver powered tests to validate functionality in browsers. The Webdriver.io framework provides services for setting up a selenium server, starting webpack and static servers, running accessibility and visual regression testing, and more.

See the Webdriver.io Utility Developer's Guide to get started.

Webpack Configuration

Webpack is a module bundler used to compile modules with dependencies and generate static assets. Webpack is a very powerful tool that is highly configurable and Terra components rely on specific polyfills, webpack loaders and plugins to render correctly. Terra provides a default webpack configuration which we recommend you extend to meet your needs. By using this default configuration, we will manage webpack dependencies and set up translation aggregation.

See the Webpack Configuration Guide to get started.

Versioning

Terra-toolkit is considered to be stable and will follow SemVer for versioning.

  1. MAJOR versions represent breaking changes
  2. MINOR versions represent added functionality in a backwards-compatible manner
  3. PATCH versions represent backwards-compatible bug fixes

Consult the component CHANGELOGs, related issues, and PRs for more information.

Contributing

Please read through our contributing guidelines. Included are directions for issue reporting and pull requests.

LICENSE

Copyright 2017 - 2019 Cerner Innovation, Inc.

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

You can’t perform that action at this time.