@chartshq/datamodel

An environment with node, rustup and wasm-pack set up.

Usage no npm install needed!

<script type="module">
  import chartshqDatamodel from 'https://cdn.skypack.dev/@chartshq/datamodel';
</script>

README

Pre-requirements

An environment with node, rustup and wasm-pack set up.

How to install

npm install

How to run in debug mode

# Builds the project and opens it in a new browser tab. Auto-reloads when the project changes.
npm start

How to build in release mode

# Builds the project and places it into the `dist` folder.
npm run build

How to run unit tests

# Runs all dev tests after a new build
npm run test:dev

# Runs ts tests with an available build
npm run ut:ts

# Runs rs tests with a new dev build
npm run ut:rs

# Runs ts tests with a new dev build
npm run test:dev-ts

# Get ts coverage
npm run cov:ts

# Get rs coverage
npm run cov:rs

What does each file do?

  • Cargo.toml contains the standard Rust metadata. You put your Rust dependencies in here. You must change this file with your details (name, description, version, authors, categories)

  • package.json contains the standard npm metadata. You put your JavaScript dependencies in here. You must change this file with your details (author, name, version)

  • webpack.config.js contains the Webpack configuration. You shouldn't need to change this, unless you have very special needs.

  • webpack.config.coverage.js contains the Webpack configuration for coverage purposes ie. building without any minification.

  • The js folder contains your JavaScript code (index.js is used to hook everything into Webpack, you don't need to change it).

  • The src folder contains your Rust code.

  • The static folder contains any files that you want copied as-is into the final build. It contains an index.html file which loads the index.js file.

  • The tests folder contains your Rust unit tests.