@explorable-viz/fluid

Data-linked visualisations

https://github.com/explorable-viz/fluid

Science Score: 54.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Committers with academic emails
    1 of 6 committers (16.7%) from academic institutions
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.5%) to scientific vocabulary

Keywords

data-visualization dependency-analysis open-science program-slicing provenance
Last synced: 6 months ago · JSON representation ·

Repository

Data-linked visualisations

Basic Info
  • Host: GitHub
  • Owner: explorable-viz
  • License: mit
  • Language: PureScript
  • Default Branch: develop
  • Homepage: http://f.luid.org
  • Size: 61.5 MB
Statistics
  • Stars: 45
  • Watchers: 7
  • Forks: 3
  • Open Issues: 123
  • Releases: 10
Topics
data-visualization dependency-analysis open-science program-slicing provenance
Created about 8 years ago · Last pushed 6 months ago
Metadata Files
Readme License Citation

README.md

Fluid: Language-integrated data provenance

Fluid is an experimental programming language which integrates a bidirectional dynamic analysis to connect outputs to data sources in a fine-grained way. Fluid is implemented in PureScript and runs in the browser.

develop GitHub pages

Installation

Software required

  • git
  • Node.js >=18.0.0
  • yarn >= 1.22

Additionally, for Windows users only:

Building

  • Clone the repository (for Windows users, do this under the Ubuntu WSL)
  • Run ./script/setup/dev-setup.sh from the top-level directory
  • yarn install to install Node dependencies
  • yarn build

Use

The following assumes you have already successfully run yarn build (see above).

Running programs from the command line

Fluid examples in the dist/fluid/fluid can be evaluated from the command line as follows (from the top-level directory):

npx fluid evaluate -f <path> Note that the path is relative and should not include the .fld extension, e.g. for the range.fld example: % npx fluid evaluate -f example/range ((0, 0) : ((0, 1) : ((1, 0) : ((1, 1) : [])))) Success

Running websites locally (as part of Fluid development)

As an example, to build and run the website literate-execution: - yarn build to ensure Fluid source code has been compiled (can be skipped on subsequent runs) - yarn bundle-website literate-execution (can be skipped if the website being run is fluid-org) - yarn serve literate-execution (you may be prompted to proceed; press y) - Open a browser to the served URL (defaults to 127.0.0.1:8080)

Note: yarn bundle-serve is a convenient shorthand for yarn bundle-website followed by yarn serve

Testing

Running the tests from the command line

After building, tests can be run from the command line via yarn test-all

Running tests in browser

  • As per command-line tests above, but run yarn test-browser, which opens a browser window.
  • To observe the status of tests, click Debug in the browser window, and then open the JavaScript Console for your browser (e.g., via the Developer Tools).

Run Puppeteer tests for website X

  • yarn bundle-website X
  • yarn test-website X

Rebuild with puppeteerTests.headless set to false to run in browser.

Development via VS Code

The following are some notes on developing Fluid using VS Code.

  • Avoid having PureScript installed globally
  • Install the PureScript IDE extension
  • In the PureScript IDE extension settings, select Add Npm Path

  • For Windows users:

    • Launch VSCode through Ubuntu (WSL) terminal
    • Install WSL extension in VSCode

Owner

  • Name: explorable-viz
  • Login: explorable-viz
  • Kind: organization

Citation (CITATION.cff)

cff-version: 1.2.0
authors:
  - name: "Fluid contributors"
title: "Fluid programming language"
url: "https://github.com/explorable-viz/fluid"
date-released: 2025

Committers

Last synced: almost 3 years ago

All Time
  • Total Commits: 6,484
  • Total Committers: 6
  • Avg Commits per committer: 1,080.667
  • Development Distribution Score (DDS): 0.503
Past Year
  • Commits: 795
  • Committers: 2
  • Avg Commits per committer: 397.5
  • Development Distribution Score (DDS): 0.07
Top Committers
Name Email Commits
Roly Perera r****a@t****k 3,225
Roly Perera r****a@d****g 2,998
min-nguyen m****5@g****m 188
JosephBond j****8@g****m 56
dependabot[bot] 4****]@u****m 15
Roland (Roly) Perera r****a@m****e 2
Committer Domains (Top 20 + Academic)

Issues and Pull Requests

Last synced: 6 months ago

All Time
  • Total issues: 382
  • Total pull requests: 634
  • Average time to close issues: 3 months
  • Average time to close pull requests: about 11 hours
  • Total issue authors: 8
  • Total pull request authors: 15
  • Average comments per issue: 1.15
  • Average comments per pull request: 0.03
  • Merged pull requests: 589
  • Bot issues: 0
  • Bot pull requests: 0
Past Year
  • Issues: 128
  • Pull requests: 257
  • Average time to close issues: 23 days
  • Average time to close pull requests: 1 day
  • Issue authors: 5
  • Pull request authors: 10
  • Average comments per issue: 0.79
  • Average comments per pull request: 0.07
  • Merged pull requests: 227
  • Bot issues: 0
  • Bot pull requests: 0
Top Authors
Issue Authors
  • rolyp (321)
  • JosephBond (39)
  • RaoOfPhysics (7)
  • min-nguyen (6)
  • dorchard (3)
  • jacobpake (2)
  • alfy91 (2)
  • hanaizakim (2)
Pull Request Authors
  • rolyp (422)
  • JosephBond (117)
  • min-nguyen (36)
  • jacobpake (14)
  • hanaizakim (9)
  • jessySodimu (8)
  • Ali6461 (6)
  • dorchard (5)
  • hafniz (4)
  • T-ab-F (4)
  • harleengulati03 (2)
  • ColinC-UoE (2)
  • tiashah1 (2)
  • alfy91 (2)
  • AileenZheng1018 (1)
Top Labels
Issue Labels
implementation (217) setup (23) what:dependencies (11) testing (10) Hole-free semantics (9) what:language (7) figure (5) what:CI/CD (4) what:syntax (4) benchmarks (4) what:website (2) evaluation (2) writing (2) documentation (2) what:library (1) what:IDE (1) formalism (1) presentation (1)
Pull Request Labels
documentation (2) types (2)

Packages

  • Total packages: 4
  • Total downloads:
    • npm 1,048 last-month
  • Total dependent packages: 1
    (may contain duplicates)
  • Total dependent repositories: 1
    (may contain duplicates)
  • Total versions: 201
  • Total maintainers: 6
npmjs.org: @rolyp/fluid

Fluid

  • Versions: 84
  • Dependent Packages: 1
  • Dependent Repositories: 1
  • Downloads: 58 Last month
Rankings
Stargazers count: 8.5%
Dependent repos count: 10.4%
Downloads: 11.4%
Average: 13.3%
Forks count: 15.5%
Dependent packages count: 21.1%
Maintainers (1)
Last synced: 6 months ago
npmjs.org: @explorableviz/fluid

Fluid is an experimental programming language which integrates a bidirectional dynamic analysis to connect outputs to data sources in a fine-grained way. Fluid is implemented in PureScript and runs in the browser.

  • Homepage: https://f.luid.org/
  • License: MIT
  • Status: removed
  • Latest release: 0.7.6
    published about 1 year ago
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent repos count: 25.4%
Average: 31.0%
Dependent packages count: 36.7%
Maintainers (1)
Last synced: 6 months ago
npmjs.org: @explorable-viz/fluid

A functional programming language which integrates a bidirectional dynamic analysis, connecting outputs to data sources in a fine-grained way. Fluid is implemented in PureScript and runs in the browser.

  • Versions: 114
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 898 Last month
Rankings
Dependent repos count: 26.0%
Average: 31.9%
Dependent packages count: 37.8%
Last synced: 6 months ago
npmjs.org: @explorable-viz/fluid-lang

[TESTING] Fluid is an experimental programming language which integrates a bidirectional dynamic analysis to connect outputs to data sources in a fine-grained way. Fluid is implemented in PureScript and runs in the browser.

  • Homepage: https://f.luid.org/
  • License: MIT
  • Status: removed
  • Latest release: 0.0.5
    published over 1 year ago
  • Versions: 2
  • Dependent Packages: 0
  • Dependent Repositories: 0
  • Downloads: 92 Last month
Rankings
Dependent repos count: 26.0%
Dependent packages count: 37.8%
Average: 43.2%
Downloads: 65.6%
Maintainers (2)
Last synced: 6 months ago

Dependencies

package.json npm
  • gh-pages ^3.1.0 development
  • karma 6.4.0 development
  • karma-chrome-launcher 3.1.1 development
  • karma-mocha 2.0.1 development
  • karma-mocha-reporter 2.2.5 development
  • mocha 10.0.0 development
  • npm-run-all 4.1.5 development
  • spago 0.20.9 development
  • d3 ^6.7.0
  • d3-tip ^0.9.1
  • esbuild ^0.15.1
  • purescript 0.15.4
  • purescript-psa 0.8.2
  • src ^1.1.2
yarn.lock npm
  • 505 dependencies
.github/workflows/develop.yml actions
  • actions/checkout v2 composite
  • peaceiris/actions-gh-pages v3 composite
.github/workflows/v0.3.1-typescript.yml actions
  • actions/checkout v2 composite
  • peaceiris/actions-gh-pages v3 composite
.github/workflows/v0.4.2-docker.yml actions
  • actions/checkout v2 composite
package-lock.json npm
  • 423 dependencies