# F3 v0.1.0 - Table of Contents > Experimental Elixir library for the F3 columnar file format. A Hex release downloads precompiled NIFs for macOS Apple silicon and Linux x86_64. A git checkout compiles that native code only when F3_BUILD_NATIVE=1. Upstream F3 is a research prototype. ## Pages - [README](readme.md) - User guide - [Introduction](01-introduction.md) - [Quick start](02-quick-start.md) - [Configuration](03-configuration.md) - [F3 in detail](04-f3-in-detail.md) - [Writing](05-writing.md) - [Reading](06-reading.md) - [Streaming](07-streaming.md) - [Decoders](08-decoders.md) - [Wasm](09-wasm.md) - [Interoperability](10-interoperability.md) - [Status and roadmap](11-status-and-roadmap.md) - [Architecture](architecture.md) - [Examples](13-examples.md) - [Livebook](examples.md) - Contributing - [Building from source](contributing.md) - [Changelog](changelog.md) - [Upstream compatibility](upstream-compatibility.md) - [Security](security.md) - [Feature matrix](feature-matrix.md) - [ADR 0001](0001-hybrid-elixir-rust.md) - Background - [Tutorials](tutorials.md) - [Why F3?](01-why-f3.md) - [Anatomy of an F3 file](02-anatomy-of-an-f3-file.md) - [Your first F3 file in Elixir](03-your-first-f3-file-in-elixir.md) - [Streaming and column projection](04-streaming-and-column-projection.md) - [Writing F3 from Elixir](05-writing-f3-from-elixir.md) - [Taking the decoder with the data](06-custom-encodings-and-wasm.md) - [F3, Apache Arrow, and Parquet](07-f3-arrow-and-parquet.md) - [Building a safe binary-file reader on the BEAM](08-a-safe-reader-on-the-beam.md) - [Performance, compatibility, and what remains experimental](09-performance-and-what-remains-experimental.md) - [Publication plan](publication-plan.md) - [Stage 0 test report](stage-0.md) - [Stage 1 test report](stage-1.md) - [Stage 2 test report](stage-2.md) - [Stage 3 test report](stage-3.md) - [Stage 4 test report](stage-4.md) - [Stage 5 test report](stage-5.md) ## Modules - [F3](F3.md): Experimental Elixir API for the F3 columnar file format. - [F3.Batch](F3.Batch.md): Columnar batch. - [F3.Checksum](F3.Checksum.md): XXH64 checksums for chunk bytes. - [F3.Column](F3.Column.md): One columnar vector owned by Elixir. - [F3.Decoder](F3.Decoder.md): Decodes one CASCADE encoding unit into an owned `F3.Column`. - [F3.Decoder.Native](F3.Decoder.Native.md): Calls the dirty-CPU NIF for one encoding unit. - [F3.Dispatch](F3.Dispatch.md): Chooses a decoder for one encoding unit. - [F3.Error](F3.Error.md): Error returned by the public F3 API. - [F3.Extension](F3.Extension.md): Elixir decoder registered for one footer encoding. - [F3.File](F3.File.md): Open file handle. - [F3.FlatBuffer](F3.FlatBuffer.md): Bounded reader for the FlatBuffers tables this library needs. - [F3.Footer](F3.Footer.md): Decodes an F3 footer into `F3.Metadata`. - [F3.Format](F3.Format.md): Pinned wire-format constants from upstream F3. - [F3.IO.FileSystem](F3.IO.FileSystem.md): Operating-system calls used by `F3.IO.Local`. - [F3.IO.FileSystem.OS](F3.IO.FileSystem.OS.md): `F3.IO.FileSystem` implementation that calls `File` and `:file`. - [F3.IO.HTTP](F3.IO.HTTP.md): HTTP byte source. - [F3.IO.Local](F3.IO.Local.md): Local filesystem source. - [F3.IO.Memory](F3.IO.Memory.md): In-memory byte source. - [F3.IO.Source](F3.IO.Source.md): Positioned byte source. - [F3.Inspection](F3.Inspection.md): Text and JSON rendering of `F3.Metadata`. - [F3.Logical](F3.Logical.md): Stitches physical columns into logical fields. - [F3.Metadata](F3.Metadata.md): File metadata from the postscript, the FlatBuffers footer, and the out-of-band column metadata those tables point at. - [F3.Native](F3.Native.md): Optional native decoder. - [F3.Postscript](F3.Postscript.md): The 32-byte tail of an F3 file. - [F3.Reader](F3.Reader.md): Projection, row-group selection, and batching. - [F3.Registry](F3.Registry.md): Bounded ETS table of `F3.Extension` modules. - [F3.RowGroup](F3.RowGroup.md): One row group, with the column chunks the footer points at. - [F3.Schema](F3.Schema.md): Logical Arrow schema read from an F3 footer. - [F3.Wasm](F3.Wasm.md): Loads one embedded Wasm module after the caller has opted in. - [F3.Writer](F3.Writer.md): Local F3 writer. ## Mix Tasks - [mix f3.inspect](Mix.Tasks.F3.Inspect.md): Prints metadata for one F3 file.