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

# Deployment Overview

> Compare Railway, Render, and VPS deployment options.

AspFox deploys as two services — the .NET API and the React frontend — plus PostgreSQL and Redis. All four are containerized. You can host them on any platform that runs Docker.

## Comparing deployment options

|                                | Railway                   | Render                     | VPS                         |
| ------------------------------ | ------------------------- | -------------------------- | --------------------------- |
| Ease of setup                  | Easiest                   | Easy                       | Manual                      |
| Estimated monthly cost (small) | \~\$5–10/mo               | \~\$7–15/mo                | \$5–20/mo                   |
| Control                        | Medium                    | Medium                     | Full                        |
| Free tier                      | No                        | Yes (limited)              | No                          |
| Managed PostgreSQL             | Yes (plugin)              | Yes (add-on)               | Self-managed                |
| Managed Redis                  | Yes (plugin)              | Yes (add-on)               | Self-managed                |
| Custom domains                 | Yes                       | Yes                        | Yes                         |
| Best for                       | Fast start with no DevOps | Free testing / simple apps | Full infrastructure control |

## What every deployment requires

Regardless of where you deploy, these steps are required. Missing any of them will result in a broken or insecure deployment.

* New JWT RSA key pair (not the keys from local development)
* Production Stripe live keys (`sk_live_` prefix)
* Stripe webhook endpoint registered and pointing to your production API
* Sending domain verified in Resend, `EMAIL_FROM_ADDRESS` using your domain
* `ASPNETCORE_ENVIRONMENT=Production`
* EF Core migrations applied to the production database
* `make seed` run once against the production database to create the admin user

See the [Production Checklist](/deployment/production-checklist) before going live.

## Deployment guides

<CardGroup cols={2}>
  <Card title="Railway" icon="train" href="/deployment/railway">
    Easiest path. Railway manages PostgreSQL and Redis as plugins. Good if you want to be running in production within an hour.
  </Card>

  <Card title="Render" icon="cloud" href="/deployment/render">
    Free tier available for testing. `render.yaml` configuration included. Good for individual developers evaluating the product.
  </Card>

  <Card title="VPS + Docker" icon="server" href="/deployment/vps-docker">
    Full control. Ubuntu 22.04, Docker Compose, Nginx reverse proxy, Let's Encrypt SSL. Good if you want to own your infrastructure entirely.
  </Card>

  <Card title="Production Checklist" icon="check" href="/deployment/production-checklist">
    Required reading before going live. Security, Stripe, email, database, and frontend checks.
  </Card>
</CardGroup>
