Library Directory Structure

Library files are grouped in a logical manner allowing developers to quickly identify and exclude any resources not needed on their implementation.

Here is an outline:

The js directory:

Files related to the core Library API

  • chartiq.js

    • File containing all core API calls.
  • chartiq-lite.js

    • File containing only minimal API calls necessary for rendering and managing the most basic chart features.
    • chartiq.js is a superset of chartiq-lite.js. Only one of these files should be included in your implementation.
    • chartiq-lite.js excludes features such as :
      • quoteFeed
      • drawings
      • studies
      • agreagted chart types (Kagi, Renko, P&F, etc)
      • equation charts
      • shading
      • advanced chart styles (histograms, heatmaps, scatterplots, HLC bars)
      • chart sharing,
      • nternationalization
      • markers
      • spans and ranges
      • symbol lookup drivers
    • Optionally, we can bundle into chartiq-lite.js specific advanced features upon request. Contact us if you wish to create a custom lite build.
    • An additional directly containing all advanced functionality, in individual modular files, can also be provided upon request to allow your firm to create the perfect package for your needs by incrementally combining chartiq-lite.js with any of the individual files.
  • componentUI.js

  • components.js

    • This file contains all functions linked to the Web Components used in the sample templates.
  • addOns.js

    • This file contains the additional modules outlined in the API Reference.
  • thirdparty directory:

    A set of third party utilities required to support various features of the core library.

    • Required for mobile SDK only:
      • hammer.js
    • Required for chart sharing support only:
      • html2canvas.js
      • promise.min.js
    • Required for locale/internationalization support on legacy browsers only:
      • intl.js
    • Required for web components support only:
      • object-observe.js
      • webcomponents-lite.min.js
    • Required for line smoothing support only (animation):
      • splines.js
    • Required for Dialogs support only:
      • perfect-scrollbar.jquery.js
  • extras directory:

    Specialized functioality seldom required on implementation

    • hlcbox.js
    • requestLimiter.js
      • Including this file will allow you to limit the number of outbound requests to any specific domain. See file header for more details.

The examples directory:

Example interfaces and data used in the sample implementations. It is important all these items are reviewed and adjusted to meet requirements.

  • data

    • This folder contains sample static data objects to get you started until you have implemented your own quote feed or streaming mechanism.
  • feeds

    • This folder contains sample quotefeed, and symbol search implementations, including an interface to our quote feed simulator, so you can test your chart functionally without a real quote feed. All sample templates use this simulator by default. This file can be removed once you have developed your own quote feed interface.
  • markets

    • This folder contains a sample market and symbology implementation for a few select markets. You will want to create your own market implementation to define the markets you wish to support, and create a symbology translator to match your data provider.
  • templates

    • This folder contains a variety of html sample templates which can be moved to the root directory to use in your implementation. Each template will include a summary of its intended use on the header portion of the file itself. A very simple helloworld.html example template is included in the root directory already to get you started.
  • translations

    • Contains a sample translation file. A translation file is required only if your implementation will be leveraging the translations facility within the library. See the Localization tutorial for all the details.

The mobile directory:

Required for mobile SDK support only

  • thirdparty (dir):

    • hammer.js
  • nativeSdkAccessibility.js

  • nativeSdkBridge.js

  • sample-template-native-sdk.html

    • Move this file into the root directory to use.

The plugins directory:

Any additional plugins you may have purchased with the library such as cryptoIQ, scriptIQ, and TFC

The saas directory:

Individual saas components that compile into chartiq.css file

The css directory:

More on CSS here.

  • stx-chart.css
    • Required for all chart implementations
  • chartiq.css
    • Required for sample html templates.
  • normalize.css
    • This is an open source project that sets the baseline "empty page" style for all browsers to a reasonable default. Required for sample html templates.
  • page-defaults.css
    • Required for sample html templates.
  • perfect-scrollbar.css
    • Required for Dialogs support only.
  • font-awesome.css -img directory
    • ciq-*.css files are required for all charts
    • All other files are required for the sample templates only

The ES5-support directory:

ES5 transpiled files to run the Web Components UI on legacy browsers that do not support ES6 syntax.

  • Required for IE11 when using charting library version 7.0+.
  • This folder mirrors the directory structure of the core library.
  • To use these files, replace their ES6 equivalents with the ones supplied in this directory.
  • These files have been transpiled with Babel using the preset-env plugin.

Next Steps: