You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
EdgeOne Pages Ecosystem — Relational Knowledge Graph (as of Mar 30, 2026)
This document is the master reference for understanding the entire EdgeOne Pages ecosystem.
It maps every product, runtime, CLI command, API, and service — how they relate, when to use each,
and which bundled skills provide deeper guidance.
Legend
[PRODUCT] — An EdgeOne Pages product or capability
→ depends on — Runtime or build-time dependency
↔ integrates with — Bidirectional integration
⇢ alternative to — Can substitute for
⊃ contains — Parent/child relationship
⤳ skill: — Link to a bundled skill for detailed guidance
BOOTSTRAP ⤳ skill: bootstrap
├── New Project Scaffolding
│ ⊃ `edgeone pages init` — interactive project creation
│ ⊃ Framework auto-detection from existing code
│ ⊃ Template selection (static, React, Vue, Next.js, etc.)
│
├── Existing Project Migration
│ ⊃ Add `edgeone.json` configuration
│ ⊃ Move functions to `functions/` or `cloud-functions/`
│ ⊃ Convert existing middleware to EdgeOne format
│
├── Setup Checklist
│ ⊃ 1. Install CLI: `npm i -g edgeone@latest`
│ ⊃ 2. Login: `edgeone login --site china|global`
│ ⊃ 3. Init or link project
│ ⊃ 4. Configure env vars (if needed)
│ ⊃ 5. Start dev: `edgeone pages dev`
│
└── CI/CD Integration
⊃ Token-based auth: `edgeone pages deploy -t $EDGEONE_TOKEN`
⊃ GitHub Actions / GitLab CI compatible
⊃ No interactive login needed in CI
10. Decision Matrix — When to Use What
Runtime Selection
Need
Use
Why
Lightweight API, no npm, ultra-low latency
Edge Functions
V8 isolates, <1ms cold start, global edge
Complex API with npm packages, database
Cloud Functions (Node.js)
Full Node.js v20, 120s timeout, npm ecosystem
High-performance compiled API
Cloud Functions (Go)
Gin/Echo/Chi/Fiber, compiled speed, Go modules
Data science, ML, Python ecosystem
Cloud Functions (Python)
Flask/FastAPI/Django, pip packages, Python 3.10
Request interception, auth, redirects
Middleware
Edge-level, runs before all handlers
Edge-side key-value storage
KV Storage + Edge Functions
Global, eventual consistency, low latency
WebSocket real-time features
Cloud Functions (Node.js)
Only runtime supporting WebSocket
Static site, no server logic
Direct deploy (no functions)
Fastest, CDN-served globally
Runtime Comparison
Feature
Edge Functions
Node.js
Go
Python
Middleware
Engine
V8
Node.js v20
Go 1.26+
Python 3.10
V8
npm/packages
❌
✅ npm
✅ Go modules
✅ pip
❌
Max code size
5 MB
128 MB
128 MB
128 MB
Edge bundle
Max body
1 MB
6 MB
6 MB
6 MB
Pass-through
Timeout
200ms CPU
120s
120s
120s
Lightweight
KV Storage
✅
❌
❌
❌
❌
WebSocket
❌
✅
❌
❌
❌
Framework
—
Express/Koa
Gin/Echo/Chi/Fiber
Flask/FastAPI/Django
—
Framework Projects
Framework
SSR/SSG
API Routes
Deploy
Next.js
✅ SSR/SSG/ISR
✅ (auto Cloud Functions)
edgeone pages deploy
Nuxt
✅ SSR/SSG
✅ server routes
edgeone pages deploy
Astro
✅ Static/SSR/Hybrid
Via Edge/Cloud Functions
edgeone pages deploy
SvelteKit
✅ SSR/SSG/SPA
✅ endpoints
edgeone pages deploy
React (Vite)
SPA only
Via Edge/Cloud Functions
edgeone pages deploy
Vue (Vite)
SPA only
Via Edge/Cloud Functions
edgeone pages deploy
Angular
SPA/SSR
Via Edge/Cloud Functions
edgeone pages deploy
Static HTML
N/A
Via Edge/Cloud Functions
edgeone pages deploy
Data Storage
Need
Use
Where
Simple key-value at edge
KV Storage
Edge Functions only
Relational database
MySQL/PostgreSQL via Cloud Functions
Node.js / Go / Python
Document database
MongoDB via Cloud Functions
Node.js / Go / Python
Cache
Redis via Cloud Functions
Node.js / Go / Python
File storage
Third-party (S3/COS) via Cloud Functions
Any Cloud Function runtime
11. Common Workflows
1. Deploy a Static Site
1. npm install -g edgeone@latest
2. edgeone login --site china|global
3. cd my-project && edgeone pages deploy -n my-project
4. Get EDGEONE_DEPLOY_URL (⚠️ include full query params)
2. Build a Full-Stack App (React + API)
1. Create React frontend (Vite recommended)
2. Add Edge Functions: functions/api/hello.js → export function onRequest(ctx) { ... }
3. Add Cloud Functions (if complex): cloud-functions/api/data/index.js
4. edgeone pages dev (local dev on :8088)
5. edgeone pages deploy
3. Migrate Express App to EdgeOne Pages
1. Move Express app to cloud-functions/<route>/
2. Create [[default]].js with Express app export
3. Add package.json with dependencies
4. edgeone pages dev (test locally)
5. edgeone pages deploy
4. Add Auth Middleware
1. Create middleware.js at project root
2. export default { async fetch(request, env, ctx) {
const token = request.headers.get('Authorization');
if (!token) return new Response('Unauthorized', { status: 401 });
return fetch(request); // pass through
}}
3. edgeone pages dev (test locally)
5. Set Up KV Counter
1. Enable KV in EdgeOne console for project
2. edgeone pages link (bind project)
3. Create functions/api/counter.js with KV get/put
4. edgeone pages dev (local test with simulated KV)
5. edgeone pages deploy
6. CI/CD Pipeline
1. Save API token as CI secret: EDGEONE_TOKEN
2. Pipeline: npm ci → npm run build → edgeone pages deploy -t $EDGEONE_TOKEN
3. Parse EDGEONE_DEPLOY_URL from output for preview link