# site_maps v0.1.0 - API Reference

## Modules

- [SiteMaps](SiteMaps.md): Sitemap generation: streaming, parallel and incremental.
- [SiteMaps.Adapter](SiteMaps.Adapter.md): Storage behaviour used to publish, read, list and delete sitemap files.
- [SiteMaps.Adapters.FileSystem](SiteMaps.Adapters.FileSystem.md): Stores sitemaps in a local directory, including network mounts (NFS, EFS, SMB)
and container volumes.
- [SiteMaps.Adapters.Memory](SiteMaps.Adapters.Memory.md): In-memory storage backed by an `Agent`, meant for tests.
- [SiteMaps.Adapters.Noop](SiteMaps.Adapters.Noop.md): Discards every write. Useful for dry runs that only report counts through telemetry.
- [SiteMaps.Adapters.R2](SiteMaps.Adapters.R2.md): Stores sitemaps in Cloudflare R2, through its S3-compatible API.
- [SiteMaps.Adapters.S3](SiteMaps.Adapters.S3.md): Stores sitemaps in AWS S3 or any S3-compatible service (MinIO, DigitalOcean
Spaces, Wasabi, Ceph, Google Cloud Storage interoperability).
- [SiteMaps.Config](SiteMaps.Config.md): Validated configuration of a sitemap module. Options are given to `use SiteMaps`, read from the
application environment when `:otp_app` is set, and returned by the optional
`c:SiteMaps.config/1` callback, in that order of precedence, later sources winning.
- [SiteMaps.Date](SiteMaps.Date.md): W3C datetime normalization and formatting for sitemap dates.
- [SiteMaps.IndexEntry](SiteMaps.IndexEntry.md): A `<sitemap>` entry of a sitemap index.
- [SiteMaps.Location](SiteMaps.Location.md): Storage keys of the files written by a process execution.
- [SiteMaps.Oban.Worker](SiteMaps.Oban.Worker.md): Oban worker that runs `SiteMaps.generate/2`. Compiled only when Oban is available.
- [SiteMaps.Plug](SiteMaps.Plug.md): Serves generated sitemaps and the built-in XSL stylesheets.
- [SiteMaps.Process](SiteMaps.Process.md): A sitemap process declared with `SiteMaps.process/3`.
- [SiteMaps.Result](SiteMaps.Result.md): Outcome of `SiteMaps.generate/2`.
- [SiteMaps.RobotsTxt](SiteMaps.RobotsTxt.md): Renders a `robots.txt` pointing crawlers to the sitemaps.
- [SiteMaps.Telemetry](SiteMaps.Telemetry.md): Telemetry events emitted while generating sitemaps.
- [SiteMaps.URL](SiteMaps.URL.md): A `<url>` entry of a urlset, validated and normalized by `new/2`.
- [SiteMaps.XML](SiteMaps.XML.md): iodata rendering of urlsets and sitemap indexes.

- Exceptions
  - [SiteMaps.EntryTooLargeError](SiteMaps.EntryTooLargeError.md): A single sitemap entry is larger than the configured `max_bytes` of a file.
  - [SiteMaps.Error](SiteMaps.Error.md): Raised by `SiteMaps.generate!/2` when generation fails.

## Mix Tasks

- [mix site_maps.gen](Mix.Tasks.SiteMaps.Gen.md): Generates a starter module that uses `SiteMaps`, with a static process and a dynamic process
sharded by month, written through the `SiteMaps.Adapters.FileSystem` adapter.
- [mix site_maps.generate](Mix.Tasks.SiteMaps.Generate.md): Generates the sitemaps of a module that uses `SiteMaps`.

