Project structure
Projects are folders of .vamp modules plus a vamp.toml manifest. Routing is file-based under app/.
Full-stack layout
my-app/
vamp.toml
main.vamp
lib/
store.vamp
api.vamp
ui_kit.vamp
app/
page.vamp
settings/page.vamp
server/
health.vamp
items.vamp
data/
README.mdBackend-only
my-backend/ vamp.toml # kind = "backend" main.vamp lib/store.vamp lib/api.vamp app/server/*.vamp data/
vamp.toml
name = "my-web-app" version = "0.1.0" entry = "main.vamp" kind = "web" capabilities = [ "ui", "storage", "clock", "fs.read", "fs.write", "background", ]
Imports
import "lib/api"
import "lib/store"
fn main() {
print(api_health())
}Resolution: adjacent .vamp → mod.vamp → project root → lib/ → src/.
Next.js map
| Next.js | VampCode |
|---|---|
app/page.tsx | app/page.vamp |
app/api/… | app/server/*.vamp |
| JSX | Column { Text("x") } |
next run/build | vampcode run/build |