GithubHelp home page GithubHelp logo

frankbardon / slamdata Goto Github PK

View Code? Open in Web Editor NEW

This project forked from cryogenian/slamdata

0.0 0.0 0.0 351.12 MB

The web-based front-end for SlamData.

License: Apache License 2.0

JavaScript 2.30% CSS 4.37% HTML 0.07% PureScript 93.25%

slamdata's Introduction

Latest release Travis build status Coverage Status Join the chat at https://gitter.im/slamdata/slamdata

SlamData

Web-based visual analytics for NoSQL data, powered by Quasar.

See the Use with Quasar section for next steps.

Building from source

Building SlamData requires Node.js v4.1.0 or newer. The app is written in PureScript, the appropriate version of the PureScript compiler will be installed as part of the npm dependencies (see below).

Prerequisites

This can be skipped if Bower is already installed globally.

npm install bower -g

Checkout

git clone [email protected]:slamdata/slamdata.git

Fetch dependencies

Inside the slamdata repository directory:

bower install
npm install

Build

npm run build

After this task finishes the public directory will contain the complete SlamData front-end app.

Use with Quasar

Quasar can host the SlamData front-end app on the same port as the API. To do this, use the --content-path command-line argument when starting the engine:

java -jar [<path to quasar jar>] --content-path [<path to slamdata app>]

Where [<path to slamdata app>] is the location of the source-built public folder, or the extracted contents of a pre-built archive.

Custom styling

Users can add custom styles to notebooks by adding a query parameter to the URI. For example, to add a stylesheet located in css/foo.css to

http://slamdata.instance.com/notebook.html#/db/Folder/Notebook.slam/view

one should modify the route to

http://slamdata.instance.com/notebook.html?stylesheets=css/foo.css#/db/Folder/Notebook.slam/view

The values of stylesheets are decoded and then split by ,, so to add two stylesheets one could use

  • stylesheets=css/foo.css,http%3A%2F%2Ffoo.com%2Fstyles.css
  • stylesheets=css%2Ffoo.css,http%3A%2F%2Ffoo.com%2Fstyles.css
  • stylesheets=css%2Ffoo.css%2Chttp%3A%2F%2Ffoo.com%2Fstyles.css

These URIs are checked and, if they are valid, corresponding link elements are added to the head

Here it would be

<link type="text/css" rel="stylesheet" href="css/foo.css">
<link type="text/css" rel="stylesheet" href="http://foo.com/style.css">

Additional permissions

Working with Quasar Advanced, the user can add permission tokens to the URI, which will be sent with every ajax request.

For example to add permission tokens ABCD and 1234 to

http://slamdata.instance.com/notebook.html#/db/Folder/Notebook.slam/view

one should modify the route to

http://slamdata.instance.com/notebook.html?permissionsToken=ABCD,1234#/db/Folder/Notebook.slam/view

These tokens then will be added to X-Extra-Permissions header.

The value of permissionsToken can be url-encoded: ABCD,1234 is equal with ABCD%2C1234.

slamdata's People

Contributors

cryogenian avatar garyb avatar natefaubion avatar beckyconning avatar jdegoes avatar jonsterling avatar puffnfresh avatar shujuwen2013 avatar sellout avatar syves avatar mossprescott avatar drostron avatar waffle-iron avatar kritzcreek avatar jedesah avatar gitter-badger avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.