Prerequisites
- Deno installed (https://deno.land/)
- A Remix application ready to deploy
Running Locally
Create a server entry point:server.ts
Import Maps
For better dependency management, use import maps:deno.json
Permissions
Deno requires explicit permissions. Common permissions for Remix apps:--allow-net: Network access--allow-read: File system reads--allow-write: File system writes--allow-env: Environment variable access
Deploy to Deno Deploy
Deno Deploy is a globally distributed serverless platform.Deploy with GitHub
- Push your code to GitHub
- Visit https://dash.deno.com/
- Click “New Project”
- Connect your GitHub repository
- Set entry point to
server.ts - Deploy!
Deploy with CLI
Install deployctl:Environment Variables
Set environment variables in Deno Deploy dashboard or use.env files locally:
KV Database
Deno Deploy includes a built-in KV database:Static Files
Serve static files with the static middleware:TypeScript Configuration
Create adeno.json for TypeScript settings:
Best Practices
- Use import maps for cleaner imports
- Request only necessary permissions
- Leverage Deno KV for edge data
- Use
deno fmtanddeno lint - Cache dependencies with
DENO_DIR
Development Workflow
Related Documentation
Runtime Agnostic
How Remix runs on any JavaScript runtime
Fetch Router
Router API reference