koaning / weave

Weave, developed by the team at Weights and Biases, is a new open-source toolkit designed for performant, interactive data exploration. Our mission is to equip Machine Learning practitioners with the best tools to turn data into insights quickly and easily.

Home Page:https://wandb.ai

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Weave Logo

Weave - Interactive Data Exploration Toolkit by Weights & Biases


Hello πŸ‘‹ and welcome to Weave!

Weave, developed by the team at Weights and Biases, is a new open-source toolkit designed for performant, interactive data exploration. Our mission is to equip Machine Learning practitioners with the best tools to turn data into insights quickly and easily.

Whether you are a seasoned data scientist, an aspiring ML practitioner, or just a tech enthusiast eager to play with data, Weave is for you.

Quickstart

Install weave using pip install weave and import weave in your notebook.

Then start exploring your existing datasets with 1 line of code!:

# use any existing dataframe, here we load the iris data and visualize the labels
from sklearn.datasets import load_iris
iris = load_iris(as_frame=True)
df = iris.data.assign(target=iris.target_names[iris.target])

weave.show(df)

Try this in a Jupyter notebook ->

For example:

1. View a dataframe (in this case the Iris dataset)

first_show

2. Interactively derive insights

beginning_exploration

3. Create and share dashboards

configured_iris_panel

πŸ‘©β€πŸ« Example Notebooks

Weave has example notebooks demonstrating common usage patterns. To use the notebooks, clone this repository and install the examples' dependencies:

pip install '.[examples]'

then run through the notebooks in ./examples.

πŸŽ‰ Why Weave?

  • πŸš€ Performant: Weave is built with performance in mind. It's designed to handle large datasets smoothly so you can focus on what matters - exploring data and finding insights. Under the hood we optimize execution plans and parallelize computation using Arrow.
  • 🎨 Interactive: Weave is all about making data exploration fun and interactive. It empowers you to engage with your data and discover patterns that static graphs can't reveal - without learning complicated APIs! Beautiful and interactive plots to bring your data to life.
  • 🧩 Modular Ecosystem: Weave's architecture & compute language is build on Types, Ops, and Panels. Combine different components to build your customized data exploration toolkit, and publish reusable components into the ecosystem for others to use!
  • πŸ’» Open-Source: We believe in the power of open-source. Weave is built by the community, for the community. We are excited to see how you use it and what you build with it.

πŸ“š Getting Started

Before you dive in, make sure you have the required software installed. You'll find all the details in our Installation Guide.

After installation, check out our Quick Start Guide to get a feel for Weave. For deeper dives, we recommend our Example Notebooks, which are packed with detailed explanations, examples, and even some data exploration wizardry!


🎁 Feature Statuses

Important: Weave is newly open sourced and the APIs are subject to change. Please report any issues to https://github.com/wandb/weave/issues.

Statuses:

  • βœ…: Available: The feature is relatively stable and ready for use
  • πŸ’‘: Preview: The feature is code-complete, but may have some rough edges
  • 🚧: In Development:: The feature is still in active development - while usable, expect changes.
  • πŸ“: Todo:: The feature has not entered development
Category Feature Status
API
weave.save βœ…
weave.show βœ…
weave.publish πŸ’‘
Custom Objects
Custom Types via @weave.type decorator πŸ’‘
Custom Ops via @weave.op decorator πŸ’‘
Custom Panels via weave.panels.Panel subclass 🚧
Persistence
Publish & Save Data βœ…
Publish & Save Custom Python Objects (eg. Models) πŸ’‘
Publish & Save Configured Dashboards πŸ’‘
Publish & Save Panels, Ops, & Types 🚧
UX
Tables βœ…
Plots βœ…
Dashboard Editor πŸ’‘
Core Component Library πŸ’‘
Code Export πŸ’‘
Media Types 🚧
Version Navigation 🚧
Implementation
Language Bindings (Python, JS) βœ…
Tests/Code coverage βœ…
Core Language Spec (Types, Ops, Panels) πŸ’‘
Benchmarks πŸ“
Materials
Examples βœ…
Documentation (API Reference, Guides) 🚧

πŸ‘©β€πŸ’» Contribution

Are you passionate about data exploration and open-source projects? Awesome! Weave's community is always looking for contributors. Check out our Contribution Guide to learn how you can make Weave even better!

πŸ“’ Community

Join our thriving community Discord. It's the perfect place to ask questions, share your projects, or just chat about data exploration.

πŸ’– Thanks

Special thanks to everyone who has contributed to Weave, from submitting bug reports and feature requests to contributing code and documentation. Weave wouldn't be what it is today without you!


Happy Weaving! πŸŽ‰

Made with πŸ’œ by Weights and Biases

About

Weave, developed by the team at Weights and Biases, is a new open-source toolkit designed for performant, interactive data exploration. Our mission is to equip Machine Learning practitioners with the best tools to turn data into insights quickly and easily.

https://wandb.ai

License:Apache License 2.0


Languages

Language:TypeScript 39.6%Language:Python 28.9%Language:C 28.2%Language:HTML 1.2%Language:Less 0.8%Language:JavaScript 0.6%Language:CSS 0.5%Language:Jupyter Notebook 0.2%Language:Rust 0.0%Language:Shell 0.0%Language:Dockerfile 0.0%Language:C++ 0.0%