# PgRest v0.1.0 - Table of Contents

> A PostgREST and Supabase-compatible REST API powered by Elixir and Ecto.

## Pages

- [PgRest](readme.md)

## Modules

- [PgRest](PgRest.md): PostgREST-compatible REST API and query-building engine for Elixir.

- [PgRest.Authorization](PgRest.Authorization.md): Behavior for pluggable authorization in PgRest.
- [PgRest.Filter](PgRest.Filter.md): Applies parsed filter ASTs to Ecto queries.

- [PgRest.Order](PgRest.Order.md): Applies parsed order directives to Ecto queries.

- [PgRest.Parser](PgRest.Parser.md): Parses PostgREST-style URL parameters into structured ASTs.
- [PgRest.Parser.Order](PgRest.Parser.Order.md): Parses PostgREST order parameter into ordering directives.
- [PgRest.Parser.Select](PgRest.Parser.Select.md): Parses PostgREST select parameter into an AST.
- [PgRest.Plug](PgRest.Plug.md): Phoenix Plug that routes requests to PgRest resources.
- [PgRest.QueryPipeline](PgRest.QueryPipeline.md): Composes query execution through a pipeline:
base_query -> scope -> URL filters -> handle_param -> select -> order -> paginate -> execute -> after_load

- [PgRest.Registry](PgRest.Registry.md): GenServer that discovers and indexes PgRest resources at startup.
- [PgRest.Resource](PgRest.Resource.md): Behavior for defining PgRest API resources from Ecto schemas.
- [PgRest.Select](PgRest.Select.md): Applies parsed select AST to Ecto queries.
- [PgRest.Telemetry](PgRest.Telemetry.md): Telemetry events emitted by PgRest.
- [PgRest.TypeCaster](PgRest.TypeCaster.md): Casts string values from URL parameters to proper Elixir/Ecto types
based on schema introspection.

- [PgRest.Utils](PgRest.Utils.md): Shared utility functions for PgRest modules.

