Imported from jeremylongshore/tons-of-skills-marketplace (
plugins/saas-packs/framer-pack/skills/framer-reference-architecture/SKILL.md). Install upstream withnpx skills add jeremylongshore/tons-of-skills-marketplace --skill framer-reference-architecture. Copyright stays with the author (MIT).
Framer Reference Architecture
Prerequisites
Documented site owners, publishing/domain access policy, approved integrations, visitor-data boundaries, synthetic staging site, and rollback owner.
Instructions
Separate editing, publishing, domain/DNS, forms, analytics, and downstream integrations by least privilege. Validate changes in staging, use redacted telemetry, promote a canary, and retain a tested rollback path.
Output
Maintain an architecture record with trust boundaries, approved destinations, access/retention controls, owners, canary result, and rollback mechanism. Exclude credentials and visitor submissions.
Error Handling
Quarantine unknown integration destinations and stop publishing on domain, access, or privacy-policy failures. Restore the prior configuration before retrying.
Examples
Publish a fictional staging page, deny an unapproved analytics consumer, and verify rollback restores the prior site without leaking form data.
Overview
Production architecture for Framer integrations covering plugins, Server API CMS sync, code components, and automated publishing pipelines.
Architecture Diagram
βββββββββββββββββββββββββββββββββββββββββββββββ
β Framer Editor β
β ββββββββββββ βββββββββββββ ββββββββββββ β
β β Plugins β β Code β β Code β β
β β (iframe) β β Componentsβ β Overridesβ β
β ββββββ¬ββββββ βββββββββββββ ββββββββββββ β
β β framer-plugin SDK β
βββββββββ΄βββββββββββββββββββββββββββββββββββββββ€
β Framer CMS β
β ββββββββββββββββ βββββββββββββββββββββ β
β β Managed β β Unmanaged β β
β β Collections β β Collections β β
β ββββββββ¬ββββββββ βββββββββββββββββββββ β
βββββββββββ΄βββββββββββββββββββββββββββββββββββββ€
β Server API (WebSocket) β
β framer-api package β
βββββββββββ¬βββββββββββββββββββββββββββββββββββββ
β
βββββββββββ΄βββββββββββββββββββββββββββββββββββββ
β Your Backend β
β ββββββββββββββ ββββββββββββ ββββββββββββ β
β β CMS Sync β β Webhook β β CI/CD β β
β β Service β β Handler β β Pipeline β β
β ββββββββββββββ ββββββββββββ ββββββββββββ β
ββββββββββββββββββββββββββββββββββββββββββββββββ
Project Structure
framer-integration/
βββ plugin/ # Framer editor plugin
β βββ src/
β β βββ App.tsx # Plugin UI
β β βββ hooks/ # Plugin state hooks
β β βββ cms/ # CMS sync logic
β βββ vite.config.ts
β βββ package.json
βββ server/ # Server API backend
β βββ src/
β β βββ sync.ts # CMS sync service
β β βββ publish.ts # Auto-publish logic
β β βββ webhooks.ts # External webhook handlers
β βββ package.json
βββ components/ # Shared code components
β βββ AnimatedCounter.tsx
β βββ DataList.tsx
β βββ index.ts
βββ overrides/ # Shared code overrides
β βββ animations.tsx
β βββ interactions.tsx
βββ .env.example
Integration Patterns
| Pattern | When | How |
|---|---|---|
| Plugin CMS Sync | User-initiated sync | Plugin UI β managed collection |
| Server API Sync | Automated/scheduled | Node.js β Server API WebSocket |
| CI/CD Publish | On content change | GitHub Actions β Server API β publish |
| Webhook Bridge | External CMS events | Webhook β your API β Server API |
Decision Matrix
| Need | Solution |
|---|---|
| Custom UI in editor | Framer Plugin |
| Headless CMS sync | Server API |
| Custom interactive elements | Code Components |
| Modify existing animations | Code Overrides |
| Automated publishing | Server API + CI/CD |
Resources
Next Steps
Start with framer-install-auth to set up your development environment.