> ## Documentation Index
> Fetch the complete documentation index at: https://docs.streamly.watch/llms.txt
> Use this file to discover all available pages before exploring further.

# Requirements

> Software, accounts, and secrets you need before installing or deploying Streamly.

## Runtime

| Requirement | Version / notes                                    |
| ----------- | -------------------------------------------------- |
| Node.js     | **20+**                                            |
| pnpm        | Via Corepack (`pnpm@11.9.0` pinned in package)     |
| Supabase    | Fresh project; Auth + Postgres                     |
| openssl     | Generate `TENANT_SECRETS_MASTER_KEY` / cron secret |

## Accounts (by feature)

| Account             | When required                                                                                 |
| ------------------- | --------------------------------------------------------------------------------------------- |
| Supabase            | Always                                                                                        |
| Envato / CodeCanyon | Operator license activation in production (`ENVATO_PERSONAL_TOKEN`)                           |
| **Resend**          | **Production operator magic-link email** (`RESEND_API_KEY`) — required unless demo gate is on |
| Cloudflare          | For Workers deploy and optional Cloudflare for SaaS hostnames                                 |
| Stripe              | When installing `payments.stripe` via Plugins                                                 |
| TMDB                | Optional metadata (`TMDB_API_TOKEN`)                                                          |

## Secrets You Must Not Commit

Never commit `.env.local` or `.dev.vars`. Never expose to the browser:

* `SUPABASE_SERVICE_ROLE_KEY`
* `TENANT_SECRETS_MASTER_KEY`
* `STREAMLY_CRON_SECRET`
* Plugin payment secrets
* `ENVATO_PERSONAL_TOKEN`
* `RESEND_API_KEY`

`NEXT_PUBLIC_*` values are public build inputs.

## Hosting Options

| Target              | Docs                                                     |
| ------------------- | -------------------------------------------------------- |
| Any Node 20+ server | [Deploy (Node)](/getting-started/deploy-node)            |
| Docker / OCI        | Inlined in [Deploy (Node)](/getting-started/deploy-node) |
| Cloudflare Workers  | [Deploy Cloudflare](/getting-started/deploy-cloudflare)  |

Streamly is **not** a static-only site. Auth, APIs, playback admission, and webhooks need a server runtime.

## Related

* [Quick Start](/getting-started/quick-start)
* [Authentication Flow](/authentication/authentication-flow)
* [Environment Variables](/technical/environment-variables)
* [Security](/technical/security)
