• Stars
    star
    746
  • Rank 60,823 (Top 2 %)
  • Language
    TypeScript
  • License
    MIT License
  • Created over 9 years ago
  • Updated over 1 year ago

Reviews

There are no reviews yet. Be the first to send feedback to the community and the maintainers!

Repository Details

Data Explorer by Keen - point-and-click interface for analyzing and visualizing event data.

Data Explorer

written in typescript styled with prettier tested with jest Commitizen friendly yarn codecov

The Data Explorer is an open source point-and-click interface for querying and visualizing your event data. It's maintained by the team at Keen IO.

Install

npm install keen-explorer --save

or

yarn add keen-explorer

Visualizations Theme

The Data Explorer @keen.io/dataviz theme could be overridden during initialization of application instance.

const explorer = new KeenExplorer({
  container: '#root',
  modalContainer: '#modal-root',
  dataviz: {
    theme: {
      colors: ['red', 'blue', 'yellow']
    }
  }
 });

Settings

The Data Explorer components configuration could be specified during creation of application instance.

Set default timezone for queries

Specify default timezone used for new created queries. Provided argument must be compatible with IANA Time Zone Database standard.

const explorer = new KeenExplorer({
  defaultTimezoneForQuery: 'Africa/Nairobi',
});
Disable timezone selection

Disables possibility to change timezone from user interface.

const explorer = new KeenExplorer({
  disableTimezoneSelection: true,
});
Disable filter suggestions

Disable query creator filter suggestions

const explorer = new KeenExplorer({
  disableQueryFilterSuggestions: true,
});

Translations

The default translations files for application are hosted on jsdelivr CDN. You can easily replace the translations by overriding the loadPath for files.

const explorer = new KeenExplorer({
  container: '#root',
  modalContainer: '#modal-root',
  translations: {
    backend: {
      loadPath: 'https://cdn.jsdelivr.net/npm/@keen.io/explorer@$VERSION/dist/locales/{{lng}}/{{ns}}.json'
    }
  }
});

Confirm extraction limit

The default threshold for rendering confirmation modal is 100 properties in event collection schema used for extraction. You can easily change it by providing additional argument to constructor.

const explorer = new KeenExplorer({
  confirmExtractionLimit: 50
});

PubSub interface

The Data Explorer could be controlled dynamically by using global @keen.io/pubsub instance. By default after component is mounted in browser environment the pubsub instance should be accessible in global object.

Pubsub Events

Event Meta Description
@explorer/new-query n/a Changes view to editor mode with default query settings
@explorer/change-view { view: ViewMode } Changes Explorer view mode

Examples

Creating new query
window.KeenPubSub.publish('@explorer/new-query');
Change view
type ViewMode = 'browser' | 'editor';

window.KeenPubSub.publish('@explorer/change-view', { view: 'browser' });

Project Setup

prerequisites
  1. yarn - package manager
  2. node - make sure it's minimum 10.x.x
steps
  1. checkout repository
  2. run yarn - to install project dependencies
  3. create a config.js file (use config.template.js) and provide Keen credentials
  4. run application in development mode yarn start

npm scripts

List of useful commands that could be used by developers. Execution in the command-line interface should be prefixed with yarn package manager.

Command Description
lint run linter against current application codebase.
test run unit tests.
build builds application distribution.
prettier run code formatter process against current codebase.

commit

This project uses Conventional Commits to enforce common commit standards.

Command Description
npx git-cz run commit command line interface.

deployments

The all commits pushed into master branch will be picked by CircleCI workflow that perform npm packages version and publish.

test environments

The all commits pushed into develop branch will be picked by CircleCI workflow that allows to deploy artifiact on specific test environment.

More Repositories

1

dashboards

Responsive dashboard templates 📊✨
HTML
11,022
star
2

keen-js

https://keen.io/ JavaScript SDKs. Track users and visualise the results. Demo http://keen.github.io/keen-dataviz.js/
580
star
3

common-web

Turn web user activity into a analyzable stream of JSON event data
JavaScript
493
star
4

pingpong

HTTP monitoring for developers. Richer analytics, greater flexibility.
CSS
334
star
5

keen-tracking.js

A light, fast and flexible javascript tracking library
JavaScript
254
star
6

keen-dataviz.js

Data Visualization Charting Library
JavaScript
222
star
7

cohorts

Cohort Builder by Keen IO
111
star
8

keen-cli

A command line interface for Keen IO
Ruby
53
star
9

data-modeling-guide

Data Modeling Guide
53
star
10

github-analytics

GitHub Analytics with Keen IO
JavaScript
43
star
11

keen-analysis.js

A light JavaScript client for Keen
JavaScript
39
star
12

dashboards-dot-community

This is a collaborative project to help community managers be better at recording the impact of their activities and communicating the results.
27
star
13

keen-botkit

Analytics for Botkit by Keen IO
JavaScript
26
star
14

radialflows

Radial flow (sunburst) data visualization
Ruby
26
star
15

keen-arduino

A SDK to send events to Keen IO from an Arduino Yun
C++
15
star
16

open-data-collectors

A set of Pushpop jobs that collect data for anyone to use
Ruby
15
star
17

dashboard-builder

An easy to use JavaScript dashboard builder for event tracking
JavaScript
15
star
18

community-team

a little bit about us
14
star
19

dashboard-starter-sinatra

Sinatra template app for creating a Keen IO dashboard
JavaScript
13
star
20

community-code-of-conduct

Keen IO Community Code of Conduct
13
star
21

keen-css

Keen IO CSS Framework
CSS
13
star
22

keen

Mono-repository for Front-End projects
TypeScript
12
star
23

keen-gem-example

A Sinatra app that uses the keen gem to publish events asynchronously
Ruby
10
star
24

slate_algolia

Easily index your Slate-powered docs in Algolia
Ruby
10
star
25

dashboard-creator

TypeScript
8
star
26

keen.github.io

A collection of tools for building on Keen
CSS
7
star
27

keen-react-charts

A React Component for Keen-Dataviz.js
JavaScript
6
star
28

ecommerce-analytics-guide

Keen IO E-Commerce Analytics Guide
HTML
6
star
29

learn

Event Data Class by Keen IO
JavaScript
6
star
30

theme-builder

A custom CSS theme builder for Keen-Dataviz.js
JavaScript
5
star
31

community_ideas

A hub for tracking all of the things we want to build for the community
5
star
32

keen-cc3200

An SDK to send events to Keen IO from a Ti cc3200 board.
C
5
star
33

discoveries-demo

JavaScript
4
star
34

net-keenio-perl

A Perl library for the Keen IO analytics API (under construction)
Perl
4
star
35

keen-play-error-reporter

Sentry exception reporter for play-based apps.
Scala
4
star
36

keen-core.js

Core functionality powering keen-tracking.js and keen-analysis.js; not intended for direct use.
JavaScript
3
star
37

devise_keen

Track user events in the devise gem with Keen IO.
Ruby
3
star
38

discovery-manager.js

JavaScript
3
star
39

amp

Keen-AMP integration
HTML
3
star
40

keen-dataviz-webpack-boilerplate

JavaScript
2
star
41

analytics-in-sixty-seconds

Fastest client.draw in the West
HTML
2
star
42

comapp

JavaScript
1
star
43

react-dashboards

JavaScript
1
star
44

keen-tracking-adwords-example

JavaScript
1
star
45

keen-dataviz-maps

1
star
46

keen-ez-etl

A tiny script for exporting events from one project, modifying them, and loading them into another
Ruby
1
star