Product

The infrastructure layer your team has been missing

A unified platform for builds, deploys, preview environments, and observability — all wired together so nothing falls through the gaps.

Deployment dashboard UI with build logs streaming in real time on a dark indigo background

What Practice of Edinburgh actually delivers

At its core, the Practice of Edinburgh product is a deployment and environment orchestration engine. You connect your Git provider, define your services in a YAML manifest, and the platform handles the rest: building container images with layer caching, routing traffic to preview environments, running health checks, and rolling back automatically if a new build fails its smoke tests. There is no proprietary scripting language to learn. The manifest is plain YAML that any engineer can read in five minutes. Under the hood, builds run on isolated runners in our Dallas-region data center, with artifacts pushed to a content-addressable cache shared across your entire organization — so a library your frontend and backend both depend on is only built once.

Core capabilities, broken down plainly

No marketing fluff — here is what ships with every plan.

Ephemeral preview envs

Every pull request gets its own live URL backed by real infrastructure — database included. The environment persists as long as the PR is open and tears down automatically on merge. Reviewers can test the actual change, not a mock.

Real-time build logs

Logs stream directly to your browser and to any webhook endpoint you configure. Each log line is timestamped to the millisecond and tagged with the build step, so you find the failure in seconds instead of scrolling through thousands of lines.

One-click rollback

Every successful deploy is an immutable snapshot. Roll back to any previous version in under ten seconds — the platform swaps the traffic pointer without rebuilding anything. Your uptime SLA stops depending on how fast someone can type a git revert.

Configurable release gates

Define automated checks — load tests, Lighthouse scores, API contract tests — that must pass before traffic shifts to a new deploy. Failed gates block the release and ping your team, keeping broken code out of production without a manual gatekeeping step.

How a typical team gets set up

Most teams are fully integrated within a single afternoon. Step one: connect your Git provider via OAuth — takes about sixty seconds. Step two: push a practiceofed.yaml manifest into the root of each service repo. Step three: trigger your first build. The platform auto-detects your language runtime, selects an appropriate builder, and caches the dependency layer. By the end of day one, most teams have at least one service running on preview environments for every open PR. We have documented every integration pattern in our public docs, and our Dallas-based support team responds to setup questions within two business hours on weekdays.

VS Code editor open on a YAML manifest with a successful terminal build output below

“We had four microservices on preview environments by 3 PM on day one. The YAML manifest is so simple I sent it to a non-engineer product manager and she understood exactly what each service did. That's rare.”

Priya Nambiar, Engineering Lead, Denver CO

See the product live in your own stack

Book a 20-minute walkthrough with our engineering team — we'll connect one of your real repos, not a demo sandbox.

Book a walkthrough