Skip to main content

Mage is a notebook for building and deploying data pipelines.

Project description

PyPi mage-ai License Join Slack

Intro

Mage is an open-source tool for building and deploying data pipelines.

Mage

A data pipeline defined across 3 different files:

# load_data_from_file.py
import pandas as pd


@data_loader
def load_data():
    return pd.read_csv('default_repo/titanic.csv')
# select_columns.py
@transformer
def transform_df(df, *args):
    return df[['Age', 'Fare', 'Survived']]
# export_to_file.py
@data_exporter
def export_data(df) -> None:
    df.to_csv('default_repo/titanic_transformed.csv')

What the data pipeline looks like in the UI:

data pipeline overview

New? We recommend reading about blocks and learning from a hands-on tutorial.

Join us on Slack

Table of contents

  1. Quick start
  2. Tutorials
  3. Features
  4. Contributing
  5. Community
  6. Documentation

🏃‍♀️ Quick start

Fire mage

You can install Mage using Docker or pip:

Using Docker

Create a new project and launch tool (change demo_project to any other name if you want):

docker run -it -p 6789:6789 -v $(pwd):/home/src \
  mageai/mageai mage start demo_project

Open http://localhost:6789 in your browser and build a pipeline.

Follow the guide if you want to use PySpark kernel in your notebook.

Using pip

1. Install Mage
pip install mage-ai

For additional packages (e.g. spark, postgres, etc), please see Installing extra packages.

If you run into errors, please see Install errors.

2. Create new project and launch tool

(change demo_project to any other name if you want):

mage start demo_project

Open http://localhost:6789 in your browser and build a pipeline.

👩‍🏫 Tutorials


🔮 Features

  1. Data centric editor
  2. Production ready code
  3. Extensible

1. Data centric editor

An interactive coding experience designed for preparing data to train ML models.

Visualize the impact of your code every time you load, clean, and transform data.

Data centric editor

2. Production ready code

No more writing throw away code or trying to turn notebooks into scripts.

Each block (aka cell) in this editor is a modular file that can be tested, reused, and chained together to create an executable data pipeline locally or in any environment.

Read more about blocks and how they work.

Production ready code

Run your data pipeline end-to-end using the command line function: $ mage run [project] [pipeline]

You can run your pipeline in production environments with the orchestration tools

3. Extensible

Easily add new functionality directly in the source code or through plug-ins (coming soon).

Adding new API endpoints (Tornado), transformations (Python, PySpark, SQL), and charts (using React) is easy to do (tutorial coming soon).

Extensible charts

New features and changelog

Check out what’s new here.

🙋‍♀️ Contributing

We welcome all contributions to Mage; from small UI enhancements to brand new cleaning actions. We love seeing community members level up and give people power-ups!

Check out the 🎁 contributing guide to get started by setting up your development environment and exploring the code base.

Got questions? Live chat with us in Slack Slack

Anything you contribute, the Mage team and community will maintain. We’re in it together!

🧙 Community

We love the community of Magers (/ˈmājər/); a group of mages who help each other realize their full potential!

To live chat with the Mage team and community, please join the free Mage Slack Slack channel.

Join us on Slack

For real-time news and fun memes, check out the Mage Twitter Twitter.

To report bugs or add your awesome code for others to enjoy, visit GitHub.

🪪 License

See the LICENSE file for licensing information.


Wind mage casting spell

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mage-ai-0.3.1.tar.gz (6.1 MB view details)

Uploaded Source

Built Distribution

mage_ai-0.3.1-py3-none-any.whl (6.2 MB view details)

Uploaded Python 3

File details

Details for the file mage-ai-0.3.1.tar.gz.

File metadata

  • Download URL: mage-ai-0.3.1.tar.gz
  • Upload date:
  • Size: 6.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for mage-ai-0.3.1.tar.gz
Algorithm Hash digest
SHA256 bacacdf4bf9570a0abadba3b63fd758e738fef3111d3148d5e050ac9bc9f8a2c
MD5 0eed4c198ad5fb1e958eaf7cbecf33c2
BLAKE2b-256 ca23cd68cea4700c1487bbc8a67a34adce79cc6b85891caca7deaa1c69fefe46

See more details on using hashes here.

File details

Details for the file mage_ai-0.3.1-py3-none-any.whl.

File metadata

  • Download URL: mage_ai-0.3.1-py3-none-any.whl
  • Upload date:
  • Size: 6.2 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/4.0.1 CPython/3.9.13

File hashes

Hashes for mage_ai-0.3.1-py3-none-any.whl
Algorithm Hash digest
SHA256 c4f98faba5248bb904786c31ba4027e01c89e2e15772e56d2a8b922cb25fc9a1
MD5 3dd379b91885a15f96a34469dd9ee4c3
BLAKE2b-256 76faeb3c4f92ece835c130ef452f85222dab67bcb618667a4dfeca7aa3726c8c

See more details on using hashes here.

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page