| name | webflow-multi-env-setup |
| description | Configure Webflow across development, staging, and production environments with
per-environment API tokens, site IDs, and secret management via Vault/AWS/GCP.
Trigger with phrases like "webflow environments", "webflow staging",
"webflow dev prod", "webflow environment setup", "webflow config by env".
|
| allowed-tools | Read, Write, Edit, Bash(aws:*), Bash(gcloud:*), Bash(vault:*) |
| version | 1.5.0 |
| license | MIT |
| author | Jeremy Longshore <jeremy@intentsolutions.io> |
| tags | ["saas","design","no-code","webflow"] |
| compatibility | Designed for Claude Code |
Webflow Multi-Environment Setup
Overview
Configure Webflow Data API v2 integrations across development, staging, and production
with separate API tokens, site IDs, and secret management. Each environment targets
a different Webflow site for complete isolation.
Prerequisites
- Separate Webflow sites for each environment (or at minimum, separate API tokens)
- Secret management solution (Vault, AWS Secrets Manager, or GCP Secret Manager)
- CI/CD pipeline with environment variable support
Environment Strategy
| Environment | Webflow Site | API Token | CMS Data | Purpose |
|---|
| Development | Dev site | Dev token | Test/seed data | Local development |
| Staging | Staging site | Staging token | Copy of prod data | Pre-prod validation |
| Production | Production site | Prod token | Real data | Live traffic |
Instructions
Step 1: Environment Configuration
type Environment = "development" | "staging" | "production";
interface WebflowEnvConfig {
accessToken: string;
siteId: string;
maxRetries: number;
webhookSecret: string;
debug: boolean;
}
function detectEnvironment(): Environment {
const env = process.env.NODE_ENV || "development";
: [] = [, , ];
valid.(env ) ? (env ) : ;
}
(): {
env = ();
: <, > = {
: ({
: (),
: (),
: ,
: process.. || ,
: ,
}),
: ({
: (),
: (),
: ,
: (),
: ,
}),
: ({
: (),
: (),
: ,
: (),
: ,
}),
};
config = configs[env]();
.();
config;
}
(): {
value = process.[name];
(!value) ();
value;
}