# ExVEx v0.1.1 - Table of Contents

Pure Elixir library for reading and editing existing .xlsx / .xlsm files with round-trip fidelity — no Rust, no Python, no NIFs.

## Pages

- [ExVEx](readme.md)
- [Changelog](changelog.md)
- [License](license.md)

## Modules

- [ExVEx](ExVEx.md): Pure-Elixir reader and editor for `.xlsx` / `.xlsm` workbooks.
- [ExVEx.OOXML.SharedStrings](ExVEx.OOXML.SharedStrings.md): The shared string table (`xl/sharedStrings.xml`).
- [ExVEx.OOXML.Styles](ExVEx.OOXML.Styles.md): Parser for `xl/styles.xml`.
- [ExVEx.OOXML.Styles.AlignmentRecord](ExVEx.OOXML.Styles.AlignmentRecord.md): Raw alignment attributes attached to an `<xf>` in `xl/styles.xml`. This
is the internal OOXML-shaped representation; end users read alignment
off the flattened `%ExVEx.Style.Alignment{}` returned by
`ExVEx.get_style/3`.

- [ExVEx.OOXML.Styles.CellFormat](ExVEx.OOXML.Styles.CellFormat.md): A single `<xf>` record from `cellXfs`. Cells reference these by index via
the `s` attribute (`<c r="A1" s="3"/>` → `cell_formats[3]`).

- [ExVEx.OOXML.Styles.NumFmt](ExVEx.OOXML.Styles.NumFmt.md): A custom number format declared in `xl/styles.xml`. IDs 0..163 are
reserved for built-in formats defined by the OOXML spec; IDs 164 and
above are custom formats authored by the workbook.

- [ExVEx.OOXML.Workbook](ExVEx.OOXML.Workbook.md): Parser for `xl/workbook.xml` — the per-workbook manifest of sheets.
- [ExVEx.OOXML.Workbook.SheetRef](ExVEx.OOXML.Workbook.SheetRef.md): A reference to a worksheet as declared in `xl/workbook.xml`.
- [ExVEx.OOXML.Worksheet](ExVEx.OOXML.Worksheet.md): Parser and surgical mutator for `xl/worksheets/sheet*.xml`.
- [ExVEx.OOXML.Worksheet.Cell](ExVEx.OOXML.Worksheet.Cell.md): The raw, untyped-value form of a cell as it lives in worksheet XML.
- [ExVEx.Packaging.ContentTypes](ExVEx.Packaging.ContentTypes.md): The `[Content_Types].xml` manifest that lives at the root of every OPC
package.
- [ExVEx.Packaging.ContentTypes.Default](ExVEx.Packaging.ContentTypes.Default.md): A default content type mapping: every part whose path ends in `extension`
has `content_type` unless overridden.

- [ExVEx.Packaging.ContentTypes.Override](ExVEx.Packaging.ContentTypes.Override.md): A per-part content type override. `part_name` is an absolute path with a
leading `/` (e.g. `"/xl/workbook.xml"`) per the OPC spec.

- [ExVEx.Packaging.Relationships](ExVEx.Packaging.Relationships.md): An OPC `.rels` file — a graph of `<Relationship>` records linking parts
of the package together.
- [ExVEx.Packaging.Relationships.Relationship](ExVEx.Packaging.Relationships.Relationship.md): A single `<Relationship>` record: an opaque `id`, a type URI, and a
`target` path that is resolved relative to the directory containing
the `.rels` file that declared it.

- [ExVEx.Packaging.Zip](ExVEx.Packaging.Zip.md): Archive IO for the Open Packaging Convention container used by `.xlsx` /
`.xlsm` / `.xltx` files.
- [ExVEx.Packaging.Zip.Entry](ExVEx.Packaging.Zip.Entry.md): A single member of an xlsx ZIP archive — a path inside the package and the
raw bytes at that path. Directory entries (zero-length, name ending in `/`)
are dropped by `:zip.unzip/2` and are not represented here.

- [ExVEx.Style](ExVEx.Style.md): A resolved, flattened style for a single cell.
- [ExVEx.Style.Alignment](ExVEx.Style.Alignment.md): Alignment and wrapping options declared on a `<xf>` record.
- [ExVEx.Style.Border](ExVEx.Style.Border.md): The four sides of a cell border as `%ExVEx.Style.Side{}` records.
- [ExVEx.Style.Color](ExVEx.Style.Color.md): A colour reference from the OOXML style model. Colours can be declared
as a concrete RGB value, a reference to a theme palette entry, or a
reference to the legacy indexed palette.

- [ExVEx.Style.Fill](ExVEx.Style.Fill.md): A fill record (the cell background) — a pattern type plus optional
foreground and background colours.

- [ExVEx.Style.Font](ExVEx.Style.Font.md): A font record from `xl/styles.xml` — a name, size, colour, and the usual
decoration flags.

- [ExVEx.Style.Side](ExVEx.Style.Side.md): One side of a cell border: a line style and a colour.
- [ExVEx.Utils.Coordinate](ExVEx.Utils.Coordinate.md): A1-style cell coordinate parsing and emission.
- [ExVEx.Utils.Range](ExVEx.Utils.Range.md): Rectangular cell ranges (`"A1:B2"` in Excel's notation).
- [ExVEx.Workbook](ExVEx.Workbook.md): The in-memory representation of a workbook.

