---
title: Welcome to xorq!
sidebarTitle: Welcome
---
xorq is a deferred computational framework for building, running, and serving
pandas groupby-apply style pipelines common in ML workflows. xorq is built on
top of [Ibis](https://ibis-project.org/) and
[Apache DataFusion](https://datafusion.apache.org/).

## Getting Started

<CardGroup cols={2}>
  <Card
    title="Quickstart"
    icon="pen-to-square"
    href="getting_started/quickstart"
  >
    Get a first taste of xorq
  </Card>
  <Card
    title="10 minutes to xorq"
    icon="clock"
    href="/tutorials/10_minutes_xorq_tour"
  >
    Learn key concepts in a brief tutorial
  </Card>
</CardGroup>

## Dive Deeper

Multi-part series on how to build an end-to-end ML pipeline using live data from the [HackerNews API](https://github.com/HackerNews/API).

<CardGroup cols={2}>
  <Card
    title="1. Data prep with LLM Assisted Labeling"
    icon="database"
    href="/tutorials/hn_data_prep"
  >
    Learn to use UDXFs for preparing and labeling data with OpenAI.
  </Card>
  <Card
    title="2. Feature engineering with TF-IDF"
    icon="vector-square"
    href="/tutorials/hn_transform_tfidf"
  >
    Learn how to build fit-transform style deferred pipelines.
  </Card>
  <Card
    title="3. Model training with XGBoost"
    icon="brain"
    href="/tutorials/hn_training_xgb"
  >
    Learn how to build fit-predict style deferred pipelines.
  </Card>
  <Card
    title="4. Serving trained model"
    icon="server"
    href="/tutorials/hn_serving"
  >
    Learn how to serve fit-transform trained models
  </Card>
</CardGroup>

## Why xorq?

xorq was developed to give Python developers a more ergonomic way to build,
cache, and serve pipelines—without getting locked into a single engine. The
xorq computational framework provides a quantum leap in ML development by:

- **Simplifying development** - no more juggling separate SQL jobs, pandas
  scripts, and ML framework specific transformations.
- **Accelerating iteration** - intelligent caching means no more having to wait
  for full pipeline re-runs after every little change.
- **Making deployment seamless** - moving a working pipeline from local dev to
  production no longer requires rewriting.
