Elevate your Qlik Sense Analytics

A complete visualisation-agnostic toolset for building off the Qlik engine

  • Accelerate your development with easy to use hooks and components
  • Headless API that works with any UX framework and charting library
  • Compatible with any Qlik Sense deployment type
  • Build your own or use our awesome templates
hero-img

Get Started in Seconds with our CLI tool

Run the below commands and start exploring your mashup template

$ npm i -g @motor-js/cli
$ motor create

Please enter your application name: my-mashup

Please select your Motor template
Solar

Please select your Qlik deployment type
Qlik Sense SaaS

Please enter your tenant name: Your tenant name

Please enter your application id: Your application id

Please enter your web integration id : Your web integration Id

$ cd my-mashup
$ yarn start
solar-imgsolar-img
Need help? Read the documentation or contact us.

Watch Motor in Action

Watch how to get started with Motor using our CLI tool

How Motor Works

React Hooks, Components and Contexts simplify all interactions with the Qlik engine

Visualisation
Code
import React from 'react'
import { useData } from '@motor-js/engine'
import { Bar } from 'react-chartjs-2'
const Chart = () => {
const colors = [
"#B03060",
"#FE9A76",
"#FFD700",
"#32CD32",
"#016936",
"#008080",
"#0E6EB8",
"#EE82EE",
];
const cols = [
{
qField: '[Category]',
qLabel: 'Category',
},
{
qField: '=sum(Quantity * Price)',
qLabel: 'Revenue'
}
];
// Extract data from the engine
const { dataSet, select } = useData({ cols })
const { data } = dataSet
const labels = data && data.map(c => c.Category)
const dataValues = data && data.map(c => c.Revenue)
const dataElemNumbers = data && data.map(c => c.elemNumber)
const chartData = {
labels,
datasets: [{
label: 'Chart.js Column Chart',
data: dataValues,
backgroundColor: colors,
borderColor: colors,
borderWidth: 1
}]
}
const options = {
scales: {
yAxes: [
{
ticks: {
beginAtZero: true,
},
},
],
},
}
return (
<div>
<Bar data={chartData} options={options} />
</div>
)
}
export default Chart

Building with Motor versus the Qlik APIs

Mashup development with and without Motor

Comparative
Front End Framework
Connection to the Engine
Data Extraction
Object Embedding
Developer Skillset
Available Templates?
Qlik Libraries
Plain Java Script / Angular
Create a session using Enigma.js or the Capability APIs
Create Session Objects and HyperCubes. Restructure returned data
Capability APIs or Nebula.js
Detailed Knowledge of the Qlik APIs
No
Motor
React
Wrap your project root in a single component
Pass required columns into our hooks
A React wrapper around Nebula.js
Minimal Qlik API knowledge
Yes

Need a custom solution built in days, not months?

Features

Rapid Mashup Development

Rapid Mashup Development

Get your mashups to production faster, with a stadnardised framework

No User Limits

No User Limits

Pay per developer. Generate as many mashups as you like, with no user limits.

Host on your Qlik Site or Externally

Host on your Qlik Site or Externally

Motor is compatible with all Qlik Sense deployment types.

Access to our Private Discord Channel

Access to our Private Discord Channel

Receive priority support, learn from awesome developers and submit prioritised feature requests.

Want to build modern web apps from scratch?

Our npm packages make it a breeze 💨

@motor-js/engine

Headless library of advanced React hooks and components. All of our mashups are built on this package.

DocsNpmGitHub

@motor-js/nebula

A React wrapper around Nebula.js for embedding Qlik objects into your Motor mashup.

Docs

@motor-js/cli

A tool for creating mashup templates from the command line.

Docs

Frequently Asked Questions

How does Motor work?
Is there a limit on the number of users who can use the mashups?
Do you support authentication to Qlik Sense server?
Do you offer implementation support?
Do your mashups support the Capability APIs?

Stay in the know

Receive our latest articles and feature updates