h2o-flow

H2O Flow simplifies data science workflows

License

License

Categories

Categories

H2 Data Databases H2O Business Logic Libraries Machine Learning
GroupId

GroupId

ai.h2o
ArtifactId

ArtifactId

h2o-flow
Last Version

Last Version

0.2.10
Release Date

Release Date

Type

Type

jar
Description

Description

h2o-flow
H2O Flow simplifies data science workflows
Project URL

Project URL

https://github.com/0xdata/h2o-flow
Project Organization

Project Organization

0xdata
Source Code Management

Source Code Management

https://github.com/0xdata/h2o-flow

Download h2o-flow

How to add to project

<!-- https://jarcasting.com/artifacts/ai.h2o/h2o-flow/ -->
<dependency>
    <groupId>ai.h2o</groupId>
    <artifactId>h2o-flow</artifactId>
    <version>0.2.10</version>
</dependency>
// https://jarcasting.com/artifacts/ai.h2o/h2o-flow/
implementation 'ai.h2o:h2o-flow:0.2.10'
// https://jarcasting.com/artifacts/ai.h2o/h2o-flow/
implementation ("ai.h2o:h2o-flow:0.2.10")
'ai.h2o:h2o-flow:jar:0.2.10'
<dependency org="ai.h2o" name="h2o-flow" rev="0.2.10">
  <artifact name="h2o-flow" type="jar" />
</dependency>
@Grapes(
@Grab(group='ai.h2o', module='h2o-flow', version='0.2.10')
)
libraryDependencies += "ai.h2o" % "h2o-flow" % "0.2.10"
[ai.h2o/h2o-flow "0.2.10"]

Dependencies

There are no dependencies for this project. It is a standalone project that does not depend on any other jars.

Project Modules

There are no modules declared in this project.

Join the chat at https://gitter.im/h2oai/h2o-flow

H2O Flow

H2O Flow is a web-based interactive computational environment where you can combine code execution, text, mathematics, plots and rich media to build machine learning workflows.

Think of Flow as a hybrid GUI + REPL + storytelling environment for exploratory data analysis and machine learning, with async, re-scriptable record/replay capabilities. Flow sandboxes and evals user-Javascript in the browser via static analysis and tree-rewriting. Flow is written in CoffeeScript, with a veritable heap of little embedded DSLs for reactive dataflow programming, markup generation, lazy evaluation and multicast signals/slots.

Docs

There is a nice user guide for H2O Flow housed over in the h2o-3 repo.

Development Setup

It is recommended that you clone h2o-3 and h2o-flow in the same parent directory.

If you have not already, follow these instructions to set up your preferred IDE environment for h2o-3 development.

  1. First build H2O-3 cd h2o-3 && ./gradlew build -x test (in h2o-E)

  2. Install npm dependencies for h2o-flow npm i (in h2o-flow)

Developing with live reload

  1. Start H2O-3 with CORS checks disabled java -Dsys.ai.h2o.disable.cors=true -jar build/h2o.jar (in h2o-3)

  2. Start webpack dev-server npm run start (in h2o-flow)

This will open a browser window with auto-refreshing dev server.

Development within h2o-3 instance

  1. Run make command. This will copy the build resources into the neighbouring h2o-3 directory.

  2. Start h2o-3 from IDE without running gradle (which would write over your local flow build)

Testing a new Flow Feature with Sparkling Water

Flow can also be used with Sparkling Water
Follow this guide develop and test new Sparkling Water features in Flow.
adapted from the comments on this PR https://github.com/h2oai/h2o-flow/pull/13

copy built js files from one place to another

in the h2o-3 directory run:
cp h2o-web/src/main/resources/www/flow/js/* h2o-web/lib/h2o-flow/build/js/

build h2o-3

in the h2o-3 directory run:
./gradlew publishToMavenLocal -x test

build sparkling water

in sparkling-water directory run:
./gradlew clean build -x test -x integTest

open the Sparkling Water Shell

in sparkling-water directory run:
bin/sparkling-shell

in the sparkling water shell
at the scala> prompt run:
import org.apache.spark.h2o._
H2OContext.getOrCreate(sc)

now open Flow at the IP address specified
in the sparkling water shell

now test your changes in Flow

ai.h2o

Please, go to https://github.com/h2oai

Versions

Version
0.2.10
0.2.9
0.2.8
0.2.7
0.2.6
0.2.5
0.2.4
0.2.3
0.2.2