PyPlyne Documentation
PyPlyne brings clean functional pipes directly to Python. It gives data transformations a left-to-right shape while staying inside the Python runtime, with Polars-first table workflows and compact sequence workflows for JSON-like records.
Use this page to choose the next doc for your task. If you are new to PyPlyne, start with the Quickstart. It shows how to install PyPlyne in your own project and write your first pipelines.
Where To Go
Install PyPlyne, run the CLI, and write your first pipeline.
UnderstandCore ConceptsLearn the execution model, pipeline shapes, and how PyPlyne works with Python.
LearnLanguage GuideUse the language day to day: syntax, table verbs, records, files, and imports.
ComposeSequence PatternsWork with scalars, records, objects, functions, and other Python values in seq pipelines.
Keep data warm while iterating through the REPL, HTTP server, and pyplyne send.
Compact syntax, verb, aggregation, conversion, and file helper reference.
EmbedPython APIRun PyPlyne from Python code and inspect the public runtime API.
AutomateCLIUse command-line entry points for scripts, files, and interactive workflows.
FixTroubleshootingDiagnose parser, runtime, import, file, and session issues.
PyPlyne At A Glance
PyPlyne has two pipeline shapes:
dffor Polars-backed table transformations.seqfor Python iterables, especially JSON-like records/lists.
Both shapes use |> to pass data through readable steps, and both execute
inside Python without generating .py files.
Tiny Examples
sales = df [
{"region": "north", "amount": 120},
{"region": "south", "amount": 80},
{"region": "north", "amount": 220},
]
summary = sales
|> where(amount > 100)
|> group_by(region)
|> summarize(total = sum(amount), rows = count())
df tells PyPlyne the pipeline is table-shaped. Bare names inside table verbs,
such as amount and region, are compiled into Polars expressions.
orders = seq [
{"item": "coffee", "qty": 3},
{"item": "pens", "qty": 2},
]
restock = orders
|> filter(qty > 1)
|> keep_fields(item)
|> set_fields(buy = item == "pens")
seq keeps record-oriented data in ordinary Python containers while giving you a
compact pipeline style for filtering, mapping, and reshaping.
Common Tasks
- Try the language: Quickstart
- Understand
seqvs.df: Core Concepts - Write real transformations: Language Guide
- Use objects and callables in sequence pipelines: Sequence Patterns
- Keep data warm while iterating: Interactive Sessions
- Find exact syntax: Language Reference
- Use PyPlyne from Python: Python API
- Run from a terminal or agent: CLI
- Copy working patterns: Examples and Cookbook
Reading Path
- Quickstart to install PyPlyne and run one file.
- Core Concepts to understand
seq,df, execution, and Python interop. - Language Guide for table pipelines, files, and practical syntax.
- Sequence Patterns to use
seqwith records, objects, and functions. - Interactive Sessions if you want a persistent REPL or agent-facing session.
- Language Reference when you need exact syntax or verb behavior.
Project Status
PyPlyne is early-stage, and these docs describe the implementation in this repository. The language surface is intentionally small: Python imports, shape-aware verbs, Polars-backed table transforms, record helpers, file helpers, and persistent sessions are the core pieces to learn first.