> ## Documentation Index
> Fetch the complete documentation index at: https://trigger-docs-max-duration.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Writing tasks: Introduction

> Tasks are the core of Trigger.dev. They are long-running processes that are triggered by events.

Before digging deeper into the details of writing tasks, you should read the [fundamentals of tasks](/tasks/overview) to understand what tasks are and how they work.

## Writing tasks

| Topic                                      | Description                                                                                         |
| :----------------------------------------- | :-------------------------------------------------------------------------------------------------- |
| [Logging](/logging)                        | View and send logs and traces from your tasks.                                                      |
| [Errors & retrying](/errors-retrying)      | How to deal with errors and write reliable tasks.                                                   |
| [Wait](/wait)                              | Wait for periods of time or for external events to occur before continuing.                         |
| [Concurrency & Queues](/queue-concurrency) | Configure what you want to happen when there is more than one run at a time.                        |
| [Versioning](/versioning)                  | How versioning works.                                                                               |
| [Machines](/machines)                      | Configure the CPU and RAM of the machine your task runs on                                          |
| [Idempotency](/idempotency)                | Protect against mutations happening twice.                                                          |
| [Replaying](/replaying)                    | You can replay a single task or many at once with a new version of your code.                       |
| [Notifications](/notifications)            | Send realtime notifications from your task that you can subscribe to from your backend or frontend. |
