# Table of Contents
[Intro and motivation](./intro.md)
# Getting started
- [Quick start](./getting-started.md)
- [Client instance and lifecycle](./client.md)
# Working with data
- [Fluent API](./fluent-api.md)
- [Querying](./querying.md)
- [Get and batch get](./get-and-batch-get.md)
- [Nested collections](./nested-collections.md)
- [Transactions](./transactions.md)
- [Batch writes](./batch-writes.md)
- [Document transformations](./document-transformations.md)
- [Select aggregate functions](./aggregations.md)
- [Update/delete preconditions](./preconditions.md)
- [Explaining the query](./explain-query.md)
- [Listening the document changes](./listening-changes.md)
- [Working on dynamic/document level](./dynamic-documents.md)
# Data modelling
- [Timestamps support](./timestamps.md)
- [Document metadata as struct fields](./document-metadata.md)
- [Explicit null value serialization](./null-serialization.md)
- [Document and collection IDs](./document-collection-ids.md)
# Caching
- [Caching](./caching.md)
- [Usage](./caching/usage.md)
- [Caching named documents](./caching/named-documents.md)
- [Changing cached collections at runtime](./caching/dynamic-collections.md)
- [Choosing a cache mode](./caching/modes.md)
- [Load modes and preloading](./caching/load-modes.md)
- [How the cache is updated](./caching/updates.md)
# Administration
- [Index management](./index-management.md)
- [Bulk delete](./bulk-delete.md)
# Environment and operations
- [Google authentication](./auth.md)
- [Firestore emulator](./emulator.md)
- [Docker images and TLS](./docker.md)
- [Request tags](./request-tags.md)
- [Request timeouts](./request-timeouts.md)
- [Testing your own code](./testing.md)