npm.io
0.8.9 • Published 2d ago

@docmd/deployer

Licence
MIT
Version
0.8.9
Deps
1
Size
24 kB
Vulns
0
Weekly
1.1K

@docmd/deployer

Deployment configuration generator for docmd - the zero-config documentation engine.

Generates production-ready deployment files from your docmd.config.json. All outputs are personalised to your project; no generic copy-paste templates.

Supported Targets

Self-hosted

Flag Output
--docker Dockerfile + .dockerignore
--nginx Production-hardened nginx.conf
--caddy HTTPS-ready Caddyfile
Cloud & CI
Flag Output
--github-pages .github/workflows/deploy.yml (GitHub Actions)
--vercel vercel.json
--netlify netlify.toml

Usage

This package is invoked via the docmd CLI. You do not need to import it directly.

# Self-hosted
docmd deploy --docker
docmd deploy --nginx
docmd deploy --caddy

# Cloud / CI
docmd deploy --github-pages
docmd deploy --vercel
docmd deploy --netlify

# Combine targets
docmd deploy --docker --nginx

Every run reads your docmd.config.json and regenerates the files to match. Zero-config projects use the same defaults as docmd build.

Architecture

@docmd/deployer
  src/
    context.ts          Shared DeployContext type
    index.ts            Orchestrator - resolves options, writes files
    providers/
      docker.ts         Dockerfile + .dockerignore
      nginx.ts          nginx.conf
      caddy.ts          Caddyfile
      github-pages.ts   GitHub Actions deploy workflow
      vercel.ts         vercel.json
      netlify.ts        netlify.toml

Each provider is a pure function (ctx: DeployContext) => string - no side effects, no I/O. File writing is handled by the orchestrator. Adding a new provider is a single file with no changes to other providers.

Dependency graph (no cycles):

@docmd/core  →  @docmd/deployer  →  @docmd/api

Config resolution (loadConfig, normalizeConfig) stays in @docmd/core to keep @docmd/deployer free of any dependency on its parent package.

Documentation

See docmd.io/deployment for detailed, service-specific guides.

License

MIT - Copyright (c) 2025-present docmd.io

Keywords