# Hatchet Documentation > Hatchet is a distributed task queue and workflow engine for modern applications. It provides durable execution, concurrency control, rate limiting, and observability for background tasks and workflows in Python, TypeScript, and Go. ## Guide - [🪓 What is Hatchet?](https://docs.hatchet.run/v1/index) - [Quickstart](https://docs.hatchet.run/v1/quickstart) - [Using Coding Agents](https://docs.hatchet.run/v1/using-coding-agents) - [Tasks](https://docs.hatchet.run/v1/tasks) - [Workers](https://docs.hatchet.run/v1/workers) - [Running Tasks](https://docs.hatchet.run/v1/running-your-task) - [Durable Execution](https://docs.hatchet.run/v1/durable-execution) - [Scheduled Runs](https://docs.hatchet.run/v1/scheduled-runs) - [Cron Runs](https://docs.hatchet.run/v1/cron-runs) - [Bulk Runs](https://docs.hatchet.run/v1/bulk-run) - [Webhooks](https://docs.hatchet.run/v1/webhooks) - [Pushing Events](https://docs.hatchet.run/v1/external-events/pushing-events) - [Event Trigger](https://docs.hatchet.run/v1/external-events/run-on-event) - [Event Filters](https://docs.hatchet.run/v1/external-events/event-filters) - [Inter-Service Triggering](https://docs.hatchet.run/v1/inter-service-triggering) - [Retry Policies](https://docs.hatchet.run/v1/retry-policies) - [Timeouts](https://docs.hatchet.run/v1/timeouts) - [Cancellation](https://docs.hatchet.run/v1/cancellation) - [Bulk Retries & Cancellations](https://docs.hatchet.run/v1/bulk-retries-and-cancellations) - [Concurrency](https://docs.hatchet.run/v1/concurrency) - [Rate Limits](https://docs.hatchet.run/v1/rate-limits) - [Priority](https://docs.hatchet.run/v1/priority) - [Durable Execution](https://docs.hatchet.run/v1/patterns/durable-task-execution) - [DAGs](https://docs.hatchet.run/v1/patterns/directed-acyclic-graphs) - [Best Practices](https://docs.hatchet.run/v1/patterns/mixing-patterns) - [Child Spawning](https://docs.hatchet.run/v1/child-spawning) - [Sleep & Delays](https://docs.hatchet.run/v1/sleep) - [Wait For Events](https://docs.hatchet.run/v1/events) - [Conditions & Branching](https://docs.hatchet.run/v1/conditions) - [Error Handling](https://docs.hatchet.run/v1/on-failure) - [Resource Management](https://docs.hatchet.run/v1/task-eviction) - [Running with Docker](https://docs.hatchet.run/v1/docker) - [Autoscaling Workers](https://docs.hatchet.run/v1/autoscaling-workers) - [Sticky Assignment](https://docs.hatchet.run/v1/advanced-assignment/sticky-assignment) - [Worker Affinity](https://docs.hatchet.run/v1/advanced-assignment/worker-affinity) - [Manual Slot Release](https://docs.hatchet.run/v1/advanced-assignment/manual-slot-release) - [Logging](https://docs.hatchet.run/v1/logging) - [OpenTelemetry](https://docs.hatchet.run/v1/opentelemetry) - [Worker Health Checks](https://docs.hatchet.run/v1/worker-healthchecks) - [Prometheus Metrics](https://docs.hatchet.run/v1/prometheus-metrics) - [Additional Metadata](https://docs.hatchet.run/v1/additional-metadata) - [Middleware](https://docs.hatchet.run/v1/middleware) - [Streaming](https://docs.hatchet.run/v1/streaming) - [Environments](https://docs.hatchet.run/v1/environments) - [Troubleshooting Workers](https://docs.hatchet.run/v1/troubleshooting/index) - [Architecture & Guarantees](https://docs.hatchet.run/v1/architecture-and-guarantees) - [Cloud vs OSS](https://docs.hatchet.run/v1/cloud-vs-oss) - [About](https://docs.hatchet.run/v1/security/index) - [Audit Logs](https://docs.hatchet.run/v1/security/audit-logs) - [Region Availability](https://docs.hatchet.run/v1/region-availability) - [Uptime](https://docs.hatchet.run/v1/uptime) - [Developer Experience](https://docs.hatchet.run/v1/developer-experience) - [Frequently Asked Questions](https://docs.hatchet.run/v1/faq) ## Cookbooks - [Overview](https://docs.hatchet.run/cookbooks/index) - [Stripe](https://docs.hatchet.run/cookbooks/webhooks-stripe) - [GitHub](https://docs.hatchet.run/cookbooks/webhooks-github) - [Slack](https://docs.hatchet.run/cookbooks/webhooks-slack) ## Self-Hosting - [Introduction](https://docs.hatchet.run/self-hosting/index) - [Hatchet Lite](https://docs.hatchet.run/self-hosting/hatchet-lite) - [Docker Compose](https://docs.hatchet.run/self-hosting/docker-compose) - [Quickstart](https://docs.hatchet.run/self-hosting/kubernetes-quickstart) - [Installing with Glasskube](https://docs.hatchet.run/self-hosting/kubernetes-glasskube) - [Networking](https://docs.hatchet.run/self-hosting/networking) - [Configuring the Helm Chart](https://docs.hatchet.run/self-hosting/kubernetes-helm-configuration) - [Setting up an External Database](https://docs.hatchet.run/self-hosting/kubernetes-external-database) - [High Availability](https://docs.hatchet.run/self-hosting/high-availability) - [Engine Configuration Options](https://docs.hatchet.run/self-hosting/configuration-options) - [Prometheus Metrics](https://docs.hatchet.run/self-hosting/prometheus-metrics) - [Worker Configuration Options](https://docs.hatchet.run/self-hosting/worker-configuration-options) - [Upgrading and Downgrading](https://docs.hatchet.run/self-hosting/upgrading-downgrading) - [Downgrading DB Schema Manually](https://docs.hatchet.run/self-hosting/downgrading-db-schema-manually) - [Benchmarking](https://docs.hatchet.run/self-hosting/benchmarking) - [Data Retention](https://docs.hatchet.run/self-hosting/data-retention) - [Improving Performance](https://docs.hatchet.run/self-hosting/improving-performance) - [Read Replicas](https://docs.hatchet.run/self-hosting/read-replicas) - [Trace Sampling](https://docs.hatchet.run/self-hosting/sampling) - [SMTP Server](https://docs.hatchet.run/self-hosting/smtp-server) ## Reference - [Client](https://docs.hatchet.run/reference/python/client) - [Context](https://docs.hatchet.run/reference/python/context) - [Cron](https://docs.hatchet.run/reference/python/feature-clients/cron) - [Filters](https://docs.hatchet.run/reference/python/feature-clients/filters) - [Logs](https://docs.hatchet.run/reference/python/feature-clients/logs) - [Metrics](https://docs.hatchet.run/reference/python/feature-clients/metrics) - [Rate Limits](https://docs.hatchet.run/reference/python/feature-clients/rate_limits) - [Runs](https://docs.hatchet.run/reference/python/feature-clients/runs) - [Scheduled](https://docs.hatchet.run/reference/python/feature-clients/scheduled) - [Webhooks](https://docs.hatchet.run/reference/python/feature-clients/webhooks) - [Workers](https://docs.hatchet.run/reference/python/feature-clients/workers) - [Workflows](https://docs.hatchet.run/reference/python/feature-clients/workflows) - [Runnables](https://docs.hatchet.run/reference/python/runnables) - [Asyncio](https://docs.hatchet.run/reference/python/asyncio) - [Pydantic](https://docs.hatchet.run/reference/python/pydantic) - [Lifespans](https://docs.hatchet.run/reference/python/lifespans) - [Dependency Injection](https://docs.hatchet.run/reference/python/dependency-injection) - [Dataclass Support](https://docs.hatchet.run/reference/python/dataclasses) - [Client](https://docs.hatchet.run/reference/typescript/client) - [Context](https://docs.hatchet.run/reference/typescript/Context) - [Crons](https://docs.hatchet.run/reference/typescript/feature-clients/crons) - [Filters](https://docs.hatchet.run/reference/typescript/feature-clients/filters) - [Logs](https://docs.hatchet.run/reference/typescript/feature-clients/logs) - [Metrics](https://docs.hatchet.run/reference/typescript/feature-clients/metrics) - [Ratelimits](https://docs.hatchet.run/reference/typescript/feature-clients/ratelimits) - [Runs](https://docs.hatchet.run/reference/typescript/feature-clients/runs) - [Schedules](https://docs.hatchet.run/reference/typescript/feature-clients/schedules) - [Webhooks](https://docs.hatchet.run/reference/typescript/feature-clients/webhooks) - [Workers](https://docs.hatchet.run/reference/typescript/feature-clients/workers) - [Workflows](https://docs.hatchet.run/reference/typescript/feature-clients/workflows) - [Runnables](https://docs.hatchet.run/reference/typescript/Runnables) - [Setup & Installation](https://docs.hatchet.run/reference/cli/index) - [Profiles](https://docs.hatchet.run/reference/cli/profiles) - [Running Hatchet Locally](https://docs.hatchet.run/reference/cli/running-hatchet-locally) - [Running Workers Locally](https://docs.hatchet.run/reference/cli/running-workers-locally) - [Triggering Workflows](https://docs.hatchet.run/reference/cli/triggering-workflows) - [Using the Hatchet TUI](https://docs.hatchet.run/reference/cli/tui) ## Contributing - [Contributing](https://docs.hatchet.run/contributing/index) - [GitHub App Setup](https://docs.hatchet.run/contributing/github-app-setup) - [SDKs](https://docs.hatchet.run/contributing/sdks)