# latu v0.4.0 - Table of Contents > A native Elixir DataFrame API for Apache Spark, over Spark Connect. ## Pages - [Latu](readme.md) - [Changelog](changelog.md) - [Contributing](contributing.md) - Guides - [Quick start](quick-start.md) - [Cookbook](cookbook.md) - [Coming from PySpark](from-pyspark.md) - [Coming from Explorer](from-explorer.md) - Reference - [Cheatsheet](cheatsheet.md) - [Using Latu](usage-rules.md) - [Where Latu differs from PySpark](deviations.md) ## Modules - Verbs - [Latu](Latu.md): A native Elixir DataFrame API for Apache Spark, over Spark Connect. - Expressions - [Latu.Column](Latu.Column.md): Expressions: column references, literals, operators. - [Latu.Functions](Latu.Functions.md): Spark's function library. - [Latu.Window](Latu.Window.md): A window specification: how to partition, how to order, and which rows the frame covers. - Session - [Latu.Catalog](Latu.Catalog.md): Spark's catalog: databases, tables, views, caching. - [Latu.Retry](Latu.Retry.md): When a failed RPC is tried again, and how long Latu waits in between. - [Latu.Session](Latu.Session.md): Where the Spark Connect server is, and the identity it keys state on. - Results and observability - [Latu.Error](Latu.Error.md): Anything Latu returns as `{:error, _}`. - [Latu.ExecutionInfo](Latu.ExecutionInfo.md): What a run reported besides its result: the metrics you asked for, and the ones Spark keeps. - [Latu.Progress](Latu.Progress.md): What the server says it is doing, while it is still doing it. - [Latu.Result](Latu.Result.md): Arrow batches in, Explorer out — and, for `Latu.create_dataframe/3`, the other direction. - [Latu.Result.Arrow](Latu.Result.Arrow.md): An Arrow IPC streaming-format reader: the bytes the server sends, without Explorer. - [Latu.Result.Literal](Latu.Result.Literal.md): A literal the server sent, back into an Elixir term. - [Latu.Result.Nx](Latu.Result.Nx.md): `Latu.Result.Arrow`'s buffers as `Nx` tensors. - [Latu.Result.UDT](Latu.Result.UDT.md): A user-defined type the server sent as a literal, handed back as data. - [Latu.Telemetry](Latu.Telemetry.md): The `:telemetry` events Latu emits, and the only place their names are written down. - Plans and carriers - [Latu.CaseWhen](Latu.CaseWhen.md): A `CASE WHEN` chain, waiting for `otherwise/2`. - [Latu.DataFrame](Latu.DataFrame.md): A lazy DataFrame: a session and an inert plan. - [Latu.GroupedData](Latu.GroupedData.md): A DataFrame with grouping attached, waiting for `agg/2`. - [Latu.MergeInto](Latu.MergeInto.md): A merge being assembled: a source frame, a target table, and the clauses to apply. - [Latu.Plan](Latu.Plan.md): Relation and expression trees, built directly as protobuf. Pure: no session, no network, no IO. - [Latu.Subquery](Latu.Subquery.md): An expression that references other DataFrames, and the relations it references.