Migrate from Netlify
Translate Netlify deploys, configuration, functions, and routing to Easel.
Netlify and Easel both deploy from Git with previews, but their terminology and
configuration files differ. Easel doesn't import netlify.toml, _redirects,
or _headers, so translate each setting. Follow the
migration phases and use this page for the mapping.
Concept mapping
| Netlify | Easel |
|---|---|
| Site | Project |
| Deploy Preview | Preview deployment |
| Branch deploy | Branch preview URL |
| Production deploy | Production deployment |
| Published deploy | Current Production deployment |
| Deploy permalink | Unique deployment URL |
| Build contexts | Preview and Production environments |
| Base directory | Root directory |
| Build command | Build command |
| Publish directory | Output directory (static frameworks only) |
| Netlify Functions | Functions, after code changes |
| Edge Functions | Framework middleware or a function, where your framework supports it |
| Scheduled and background functions | Not supported; use an external scheduler or queue |
| Traffic Rules | Firewall custom rules |
| Password or visitor access | Deployment protection (workspace sign-in) |
| Forms, Identity, Blobs | Not provided; replace with an external service or your own code |
| Log drains | Not available yet |
| Domain management | Domains |
Translate build settings
Copy the base directory, build command, and production branch into the Easel project. Leave the output directory empty for full-stack frameworks. See Build configuration.
Translate redirects and headers
Move rules from _redirects, _headers, and netlify.toml into:
- Framework routing or configuration, when the framework owns the routes. See Redirects and rewrites.
- Domain redirects, when the rule is hostname-level.
- Framework header configuration or security headers.
Test status codes, wildcards, SPA fallbacks, and proxy rewrites, since they won't match Netlify exactly without changes.
Translate functions
Netlify Functions and Edge Functions use Netlify-specific handler signatures and APIs, so rewrite them as your framework's API routes, server functions, or middleware. Check runtime behavior in Functions runtime.
Forms and Identity are application services, not deployment settings. Replace them with your own API routes, an external form or authentication provider, or a database-backed implementation. A successful build doesn't prove they were migrated.