// GETTING STARTED
Import Your First Project
Pick a repository, choose Container or Static, and configure build settings.
A project ties together one Git repository, one build configuration, and (for container apps) one provisioned database. Everything below is set when you click New Project.
Site type
| Type | What it is | Gets a database? |
|---|---|---|
| Container | A process AnySites builds into a Docker image and runs continuously (Node, Python, Go, or anything else with a Dockerfile). | Yes, unless disabled |
| Static | Files built once and served directly by the edge Caddy server — no container, no idle compute cost. | No |
Static sites also get a lightweight forms feature: add a netlify attribute to an HTML <form> and submissions are captured automatically without any backend code.
Tech stack
For container apps, pick Node, Python, Go, or Other. This doesn't change how the build runs — it changes what the project page warns you about and what the generated Dev Prompt tells an AI coding assistant to do. Only Node gets a Dockerfile generated automatically; every other stack needs one committed to the repo. See Framework Auto-Detection.
Repository and branch
Pick the repository from the connected account's list, or paste an owner/repo path directly. Production branch (default main) is the only branch that triggers a deploy on push — pushes to any other branch are silently ignored.
Build command, start command, port
These are used only when AnySites is generating the Dockerfile for you (no Dockerfile in the repo, Node-detected project). If your repo has its own Dockerfile, these fields are stored but ignored — the Dockerfile's own CMD and EXPOSE are what actually run. port is always relevant: it's what the deploy health check probes and what Caddy proxies to.