Doorman
DocsGet StartedGitHub

© 2026 griffen.codes

DiscordIssuesGitHub
    Doorman v3.1.0 Now with Cloudflare WAF support

    Where W▲F meets .config

    Manage Vercel Firewall or Cloudflare security policies from a single file.

    Doorman v3.1.0 — Available Now

    Multi-provider WAF automation wired directly into your version control and CI/CD workflows.

    npm install @gfargo/doorman

    M

    U

    L

    T

    I

    -

    P

    R

    O

    V

    I

    D

    E

    R

    C

    O

    N

    T

    R

    O

    L

    Ship one policy pack to Vercel and Cloudflare with provider-specific overrides when you need them.

    A

    U

    T

    O

    M

    A

    T

    E

    D

    W

    O

    R

    K

    F

    L

    O

    W

    S

    Promote firewall changes through pull requests, previews, and CI/CD with guardrails built in.

    C

    O

    N

    F

    I

    D

    E

    N

    T

    G

    O

    V

    E

    R

    N

    A

    N

    C

    E

    Audit every change, enforce review policies, and keep environments consistent across providers.

    Write it once. Enforce it everywhere.

    doorman is the source of truth. Vercel gets the rule as-is; Cloudflare gets it translated into a Wirefilter expression — same intent, provider-native syntax.

    One config · Two firewalls
    Cloudflare
    WAF
    doorman.json
    Source of truth
    Vercel
    Firewall
    Vercel Firewall Rule
    // ships to Vercel Firewall as-is
    {
      "id": "rule_block_bad_bots",
      "conditionGroup": [{
        "conditions": [
          { "type": "user_agent", "op": "sub", "value": "bot" }
        ]
      }],
      "action": { "mitigate": { "action": "deny" } }
    }
    Cloudflare WAF Rule
    // translated to a Wirefilter expression
    {
      "expression": "http.user_agent contains \"bot\"",
      "action": "block"
    }

    F

    E

    A

    T

    U

    R

    E

    S

    SyncChanges

    Synchronize rule packs to Vercel and Cloudflare from the same config. Catch drift with provider-aware diffs before anything ships.

    npx @gfargo/doorman sync
    Sync Changes feature

    DownloadConfigs

    Export deployed rules from each provider into versioned config files. Keep Cloudflare and Vercel in lockstep with Git history.

    npx @gfargo/doorman download
    Download Configs feature

    ListRules&IPs

    Inspect deployed policies with human-friendly tables or JSON. Filter by provider, environment, and rule group in seconds.

    npx @gfargo/doorman list
    List Rules & IPs feature

    ValidateRules

    Validate rule syntax and provider-specific constraints before deployment. Ship with confidence knowing both WAFs will accept the change.

    npx @gfargo/doorman validate
    Validate Rules feature

    UseTemplates

    Kickstart new protections with templates tuned for Vercel and Cloudflare. Customize and extend policy packs as your edge footprint grows.

    npx @gfargo/doorman template
    Use Templates feature

    AdoptExistingRules

    Already have rules configured by hand in the Vercel dashboard? Download them into a versioned config, validate the result, and commit — no rework required to bring an existing project under doorman.

    npx @gfargo/doorman download
    Adopt Existing Rules feature

    Get Started with Doorman v3.1.0

    Bring Cloudflare and Vercel WAF automation into the same review process your team already trusts.

    View DocsGetting Started
    See Example Configurations