JavaScript CSS HTML
Switch branches/tags
Nothing to show
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
app
build
config
dist
src
tasks
.gitattributes
.gitignore
LICENSE.md
README.md
gulpfile.js
package.json

README.md

Convolv Icon Convolv Logo

The Convolv Desktop

A quad-console, desktop application based on the Convolv web app. It is built for the Electron runtime and uses the electron-boilerplate as a development platform.

Overview

Convolv is a desktop application that provides four independant consoles and a central dashboard for the analysis of data. Built with vanilla JS and incorporating more than a dozen open-source libraries, the application allows a user to import data, perform numerical analyses and chart the results, both to the console's chart window as well as to a common dashboard shared by all four consoles.

Quick Start

This project uses the awesome electron-boilerplate, so please refer to that repo for tips and notes regarding building and developing. To quickly launch the app on your desktop in development mode, just enter the following commands:

git clone https://github.com/scribeGriff/convolv-desktop.git
cd convolv-desktop
npm install
npm start

This assumes that you have Node.js already installed.

Build the Application

A pre-built setup executable for Windows is available in the dist folder. Simply download and launch the setup binary to install the Convolv application on your PC (note that this app is unsigned and you will need to grant permission for it to be installed). For Mac and Linux users, or for PC users who would prefer to build their own setup executable, assuming you have already followed the steps in the Quick Start, just run the following additional command:

npm run release

This will create a dist folder in your local project directory which will contain the necessary installation file for your computer.

Details

Number Crunching

Besides having built-in support for the powerful Math.js library, additional features have been incorporated including:

  • Simple waveform generator: square, pulse, triangular, etc.
  • Polynomial string construction for latex output
  • Common signal processing algorithms including (more are in development):
    fft(): fast and discrete Fourier transform
    ifft(): fast and discrete inverse Fourier transform
    fsps(): partial sums of Fourier series
    conv(): convolution
    deconv(): deconvolution (polynomial division)
    corr(): cross and auto correlation
    filter(): a 1D transposed direct form II digital filter structure

Charts

We've also included the awesome Highcharts library to provide support for the following chart types:

  • line
  • curve
  • log
  • sample
  • area
  • bar
  • column
  • polar
  • pie

Data

Data can be entered manually or imported/exported as:

  • csv from a local drive
  • JSON data from a URL (support for tokens is available)

In addition, JSON data imported from a URL can be displayed in a datatable.

Screenshots

Convolv Import Data from URL

Convolv Import and Export to File

Credits

Note: The libraries below are covered by their respective licenses.

Convolv is only a reality thanks to these amazing Github projects:

License

MIT. Please see the license file.