If you’re using Devin on an existing codebase, deployment happens through your own CI/CD pipeline, not through the hosted deployments described here. See Existing applications.
What a deployment is
A deployment is Devin publishing an app it built to Cognition-hosted infrastructure, so the app stays reachable at a public URL after the session ends. Devin can deploy two things:- Static frontends, served from
devinapps.com. - FastAPI backends, deployed to Fly.io.
Availability
Deployment is available to non-enterprise organizations with secure mode off:- Enterprise organizations: deployment is disabled for all sessions. Deploy to your own infrastructure instead.
- Secure mode: when secure mode is enabled, Devin loses native internet deployment capabilities. The setting lives under Security settings on the Customization page.
Frontend deployment
Devin uploads the contents of a build directory and serves them as a static site at a uniquehttps://<name>.devinapps.com subdomain. The only requirement is that the directory contains an index.html — so any framework that produces a static build works, including Vite, Next.js static exports, Astro, SvelteKit’s static adapter, and plain HTML, CSS, and JavaScript.
When Devin creates a frontend from scratch and you haven’t specified a stack, it scaffolds a Vite + TypeScript + Tailwind CSS + shadcn/ui app. That’s a default for new projects, not a restriction on what can be deployed.
Backend deployment
Devin deploys Python backends to Fly.io, generating the Dockerfile andfly.toml for you. The project must:
- have a
pyproject.tomlwith a project name, and - expose a FastAPI app named
appinapp/main.py.
Existing applications
Devin is not equipped to deploy pre-existing applications to Cognition-hosted infrastructure. A static frontend may work if it builds to a directory with an
index.html, but existing backends generally will not, because they rarely match the FastAPI layout the deployer expects.
For pre-existing applications, treat deployment like any other task you’d hand a new engineer: tell Devin which platform to use and store the credentials and commands in Secrets and Knowledge.
