spot-framework v0.0.6
SPOT - extensible facet browser
Preview
Quick note on privacy
What is SPOT?
SPOT is an open science platform on which researchers can visually analyze and compare the datasets from published scientific journal articles. It is also a visual data analytics tool for multi-dimensional datasets. SPOT allows researchers to recreate representations (plots) in the publications and do more exploration. In this way, static plots in the publications become interactive and researcher can look at the data from different angle. The interactive dashboards for the quick analysis of datasets and easy identification of correlations between variables can be done in only a few clicks. The tool was initially developed for the iDARK project, which aimed to combine and visualize the worldwide data within the most general models of dark matter. The published datasets in this research project are being collected at www.idarksurvey.com. SPOT was designed as a generic tool in order to extend and reuse it in other disciplines than physics. It is quick and responsive, even for data sets containing huge number of records.
More details about SPOT can be foun at https://research-software.nl/software/spot
How to run it
Make sure you have git installed on your system.
Prerequisites for running SPOT as stand-alone website using crossfilter:
- follow the instructions to install node.js:
- via package manager (suggested)
- Binaries
- clone this repository:
git clone https://github.com/NLeSC/spot.git && cd spot
- install dependencies:
Note: some dependencies may require node-gyp. If you get errors during compilation of this package, you may need to install following packages on Ubuntu system or equivalent packages for your distribution.npm install
sudo apt-get install -y build-essential python libpq-dev
- Create .env file using .env.sample and adjust the settings if necassary
- start the web the application
npm start
- open http://localhost:9966 in a web browser
Building the website is only tested on Linux, but it should work on any OS (Mac OS X for example) that is supported by node and npm.
Hosting the site can be done by any webserver.
Make sure that Javascript is enabled in your web browser. SPOT is fully functional in Google Chrome and Chromium web browsers and it should work in other web browsers. Otherwise, please submit an issue.
Using Docker (tested on Linux)
- Get the latest Docker image
docker pull nlesc/spot:latest
Alternatively, you can build the Docker image yourself
docker build --network=host -t nlesc/spot .
Run SPOT in a container
docker run --rm --net=host -ti -p "9966:9966" nlesc/spot
- Open http://localhost:9966 in a web browser
If you want to run it using custom settings in .env file:
docker run --rm --net=host -ti -v $(pwd)/.env:/app/.env -p "80:80" spot
SQL Database
Spot can also work with a PostgreSQL database, but this requires either a local or a remote service to run. Commutication between the client and the database server is achieved by using web socket.
In order to use SPOT with a PostreSQL server, you need to clone the spot-server repository and follow the instructions in the README. In general, these are the steps to follow:
make sure that PostreSQL service is runnning.
upload your data to the database with the
spot-import.js
scriptrun the SPOT-server with the
spot-server.js
script
Zenodo Integration
- Create a Zenodo account. The saved enries cannot be removed from Zenodo. If you are experimenting, you can use https://sandbox.zenodo.org/.
- Create a new application token at this link
- Select:
- deposit:actions
- deposit:write
- Select:
- Add the generated token to .env file
- Example: ZENODO_TOKEN=JrpvdciCvlQxl8ByT0DY3HcNrsRMPNTp6ZRuucEusE4bmafP0VuXXhWHi22z
Desktop version
Desktop version of SPOT is still under development. Available downloads can be found here.
Documentation
SPOT api documentation can be found here.
Credits
Jisk Attema, Faruk Diblen the Netherlands eScience Center
7 years ago
8 years ago