Supported frameworks
Templates available when creating a project, and how an imported project is detected.
Templates
| Template | Runtime | Default port |
|---|---|---|
| Next.js | Node | 3000 |
| React | Node | 3000 |
| Vue | Node | 3000 |
| Nuxt | Node | 3000 |
| Svelte | Node | 3000 |
| Python | Python | 8000 |
| Blank | Node | — |
Blank provisions an empty workspace with no scaffolding. Use it when you are importing an existing codebase or want to lay out the project yourself.
Importing an existing project
When you import an archive, the framework is detected from the project's own manifest and lockfile, then mapped to the matching template. Detection only selects sensible defaults — it never rewrites your code.
If detection picks the wrong one, or your project is not covered by a template,
declare your services explicitly in evrygo.json. That file always wins.
Anything else
Templates are a convenience, not a constraint. A sandbox runs whatever command
you declare, so any stack that starts with a single command and listens on a
port will work — declare it in evrygo.json and start from the Blank
template.
Choosing a port
Declare the port your dev server actually listens on. Frameworks that pick a free port at random when the declared one is taken are handled: the platform follows the port the process really opened, so your preview keeps working.
Bind to all interfaces rather than loopback only when your framework requires an explicit host flag — otherwise the preview cannot reach your server.