Trigger.dev Project Structure

The open-source platform for building background jobs and AI workflows. A TypeScript monorepo featuring a Remix-based dashboard and specialized infrastructure components.

Updated 2025-12-30

#trigger.dev #remix #typescript #monorepo #turborepo #background-jobs #open-source
PNGPDF

Project Directory

trigger.dev/
apps/
Internal applications
webapp/
Main dashboard (Remix)
app/
Remix application code
components/
React components
routes/
Remix routes
services/
Business logic
presenters/
Data transformation
prisma/
Database schema
public/
Static assets
remix.config.js
coordinator/
Job coordination service
supervisor/
Job supervision service
docker-provider/
Docker execution provider
packages/
Shared and public packages
trigger-sdk/
Public @trigger.dev/sdk
src/
v3/
SDK v3 implementation
package.json
core/
Shared core logic & types
react-hooks/
Frontend React hooks
redis-worker/
Redis-backed worker
internal-packages/
Private shared packages
database/
Shared Prisma client
emails/
Email templates
docker/
Docker compose & deployment configs
docs/
Documentation site source
turbo.json
Turborepo configuration
pnpm-workspace.yaml
pnpm monorepo config
package.json
Root workspace file

Repository Info

Tech Stack

  • Framework-Remix (Dashboard)
  • Language-TypeScript
  • Database-PostgreSQL with Prisma
  • Runtime-Node.js
  • Infrastructure-Docker, Kubernetes, Redis
  • Monorepo-Turborepo + pnpm

Architecture Notes

Trigger.dev uses a multi-service monorepo architecture. The apps/ directory contains independent services like the web dashboard (Remix), a coordinator for managing runs, and providers for different execution environments (Docker/Kubernetes). Shared logic is extracted into packages/ (public SDKs) and internal-packages/ (private shared code). They use Prisma for database management and Turborepo for build orchestration.

Key Directories

  • apps/webapp/-Main Remix application for the Trigger.dev dashboard
  • apps/coordinator/-The central service that coordinates task execution
  • packages/trigger-sdk/-The public SDK developers use in their own apps
  • internal-packages/database/-Centralized Prisma schema and database access layer

Why This Structure?

Trigger.dev is a prime example of a modern, production-grade TypeScript monorepo. It shows how to separate concerns between a user-facing dashboard, a public SDK, and backend infrastructure services while sharing a unified data model and core logic. Highly recommended for developers building complex distributed systems.

Share this template

Related Templates

© 2025 FolderStructure.dev