Skip to content

Systemsaholic/tailfire

Repository files navigation

Tailfire Monorepo

Tailfire is the Phoenix Voyages monorepo. It uses pnpm workspaces and Turborepo to run an API-first travel platform: Next.js frontends handle presentation and Supabase auth, while business data and workflow logic flow through the NestJS API.

Workspace Layout

tailfire/
├── apps/
│   ├── admin/   # Advisor and operations dashboard
│   ├── api/     # NestJS backend API
│   ├── client/  # Traveler portal and shared proposal access
│   └── ota/     # Public discovery, AI concierge, and advisor-led storefront
├── packages/
│   ├── api-client/
│   ├── config/
│   ├── database/
│   ├── shared-types/
│   ├── trip-proposal-ui/
│   └── ui-public/
└── docs/

Quick Start

pnpm install

# Create apps/api/.env from Doppler or team-provided local API secrets.
cp apps/admin/.env.example apps/admin/.env.local
cp apps/client/.env.example apps/client/.env.local
cp apps/ota/.env.example apps/ota/.env.local

cd apps/api && pnpm db:migrate && cd ../..

pnpm dev

pnpm dev runs the root predev hook first. Today that hook probes local Redis with redis-cli and may try to start redis-server, so filtered app commands are often easier on machines without local Redis tooling.

Canonical Docs

Document Purpose
Docs Index Canonical doc entry point
Architecture Current app, package, and data-flow model
Local Development Working local setup paths, ports, and caveats
Environments Environment mapping, frontend envs, and CORS behavior
Testing Current scripts, coverage boundaries, and gaps
CI/CD What the tracked GitHub Actions workflows actually do
API Deployment Railway API deployment behavior
Repository Review Issues Open platform and doc-audit findings

App And Package Docs

Surface Documentation
API apps/api/README.md
Admin apps/admin/README.md
Client apps/client/README.md
OTA apps/ota/README.md
Database packages/database/README.md
Shared Types packages/shared-types/README.md
API Client packages/api-client/README.md
UI Public packages/ui-public/README.md
Trip Proposal UI packages/trip-proposal-ui/README.md

Environment Summary

Environment Branch Deployment Path
Local local worktree pnpm dev or filtered app commands on localhost:3100-3103
Staging QA Mirror staging deploy-staging.yml migrates Tailfire-Staging, deploys Railway api-staging, deploys Vercel staging apps, and aliases the live HTTPS admin to staging.phoenixvoyages.ca
Advisor Training Playground main trigger deploy-preview.yml migrates Tailfire-Preview, deploys Railway api-dev, deploys Vercel playground previews, and aliases admin to tf-demo.phoenixvoyages.ca
Production main deploy-prod.yml migrates Prod DB, deploys Railway api-prod, and targets api.tailfire.ca, tailfire.phoenixvoyages.ca, OTA, and the client portal; the same merge also refreshes tf-demo

Core deployment rule: the same codebase runs everywhere; environments differ only by data and configuration. Staging is the prod-like QA mirror for validating fixes before Production. tf-demo is the seeded advisor Training Playground and must not be used to test or validate fixes.

Common Commands

pnpm dev
pnpm build
pnpm lint
pnpm typecheck
pnpm test

About

No description, website, or topics provided.

Resources

Security policy

Stars

Watchers

Forks

Packages

 
 
 

Contributors