Developer quick start

Make an application Uppr-ready.

Uppr works best when every repository exposes the same small set of operational signals. The CLI can write the complete AI implementation brief directly into any project.

1. Generate the integration brief

cd path/to/your-application
uppr dump

This creates UPPR.md in the current directory. Give that file to your coding agent or use it as the project checklist. To target another directory, run uppr dump ./path.

2. Adopt the project contract

your-app/
├── Dockerfile
├── schema.json
├── config/
│   └── .env
└── data/
    └── main.sqlite
Inside containers, Uppr mounts these directories at /app/config and /app/data. Make application paths work in both local and container execution.

3. Describe the environment

{
  "variables": [{
    "name": "APP_ENV",
    "description": "Runtime mode used by the application.",
    "example": "production",
    "required": true
  }]
}

Uppr adds missing schema keys to config/.env with blank values and preserves existing values.

4. Validate the container boundary

docker build -t your-app .
docker run --rm -p 3000:3000 \
  -v "$PWD/config:/app/config" \
  -v "$PWD/data:/app/data" your-app

Replace 3000 with the first numeric port in the Dockerfile’s EXPOSE instruction. Confirm durable writes appear under the host data/ directory.

5. Hand it to Uppr

Add the repository to a workspace, pull it, prepare application files, and launch. Uppr derives the port, protects the config and data mounts, and generates the deployment layer.