Code Monkey home page Code Monkey logo

kedro-viz's Introduction

Kedro-Viz

develop master
CircleCI CircleCI

npm version PyPI version License Python Version code style: prettier

Kedro-Viz shows you how your Kedro data pipelines are structured.

With Kedro-Viz you can:

  • See how your datasets and Python functions (nodes) are resolved in Kedro so that you can understand how your data pipeline is built
  • Get a clear picture when you have lots of datasets and nodes by using tags to visualise sub-pipelines
  • Search for nodes and datasets

Kedro-Viz Pipeline Visualisation

This project was bootstrapped with Create React App, for which more complete documentation is available on the project website.

How do I install and use Kedro-Viz?

For in-depth development and usage notes, see the Contribution Guidelines.

As a Kedro Python plugin

Kedro-Viz is available as a Python plugin named kedro-viz.

The following conditions must be true in order to visualise your pipeline:

  • Your project directory must be available to the Kedro-Viz plugin.
  • You must be using a Kedro project structure with a complete Data Catalog, nodes and pipeline structure.

To install it:

pip install kedro-viz

This will install kedro as a dependency, and add kedro viz as an additional CLI command.

Kedro CLI command

To visualise your pipeline, go to your project root directory and install the project-specific dependencies by running:

kedro install

This will install the dependencies specified in requirements.txt in your Kedro environment (see the Kedro documentation for how to set up your Python virtual environment).

Finally, run the following command from the project directory to visualise your pipeline:

kedro viz

This command will run kedro_viz.server on http://127.0.0.1:4141/ which cannot be accessed from another machine.

Kedro-Viz has a number of options to customise running the visualisation:

CLI command Description
--host Host that viz will listen to. Defaults to 127.0.0.1.
--port TCP port that viz will listen to. Defaults to 4141.
--browser/--no-browser Whether to open viz interface in the default browser or not.
--load-file Path to load the pipeline JSON file
--save-file Path to save the pipeline JSON file
--pipeline Name of the modular pipeline to visualise. If not set, the default pipeline is visualised.
--env, -e Kedro configuration environment. If not specified, catalog config in local will be used.

As a JavaScript React component

Kedro-Viz is also available as an npm package named @quantumblack/kedro-viz. To install it:

npm install @quantumblack/kedro-viz

Then include it in your React application:

import KedroViz from '@quantumblack/kedro-viz';

const MyApp = () => <KedroViz data={json} />;

As a JavaScript React component, the project is designed to be used in two different ways:

  1. Standalone application

    Run npm run build to generate a production build as a full-page app. The built app will be placed in the /build directory. Data for the chart should be placed in /public/api/nodes.json because this directory is marked gitignore.

  2. React component

    Kedro-Viz can be used as a React component that can be imported into other applications. Publishing the package will run npm run lib, which compiles the source code in /src, and places it in the /lib directory.

    The React component exposes props that can be used to supply data and customise its behaviour. For information about the props, their expected prop-types and default values, see /src/components/app/index.js. For examples of the expected data input format, see the mock data examples in /src/utils/data, and compare the resulting demo.

What licence do you use?

Kedro-Viz is licensed under the Apache 2.0 License.

↑↑↓↓←→←→BA

kedro-viz's People

Contributors

richardwestenra avatar 921kiyo avatar tolomea avatar dmitriideriabinqb avatar snyk-bot avatar andrii-ivaniuk avatar limdauto avatar mzjp2 avatar nakhan98 avatar waylonwalker avatar dependabot[bot] avatar ana-potje avatar yetudada avatar minyus avatar ottis avatar

Watchers

James Cloos 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.