devopsellence vibe

index-php stack demonstration

Fromprompt todeploy-ready.

This app demonstrates the devopsellence vibe feature with the smallest useful stack: one PHP file, SQLite, Docker, and a solo deploy contract ready for a normal VPS.

1 fileProduct code starts and stays in public/index.php.
PHP 8.4No framework, no build step, no frontend pipeline.
soloDeploy-ready config, stopped before server mutation.
Original vibe intake screenshot
Terminal screenshot of the original devopsellence vibe prompt for this app

The index.php philosophy.

This stack borrows the Levels-style instinct: prove the product with direct, inspectable code before adding architecture. devopsellence keeps that fast path deployable.

P1

One obvious file

Inspired by Pieter Levels-style shipping: start with index.php, keep the whole product legible, and avoid framework ceremony until the app actually needs it.

P2

Boring runtime

PHP-FPM, nginx, SQLite, and Docker are ordinary tools. The stack stays easy to run, inspect, back up, and replace.

P3

Speed without cloud sprawl

A useful MVP can live on one VPS with one writable volume. Cloud services come later for real pressure, not scaffolding anxiety.

P4

Ops as a contract

devopsellence wraps the tiny app with health checks, volumes, dry-runs, logs, and solo deploy flow so simplicity still ships cleanly.

What the stack proves.

The point is not a bigger framework. The point is how far a plain app can go when the runtime, persistence, and deploy contract are explicit.

01

Tiny App Surface

One public/index.php entrypoint, readable enough to audit in a minute.

02

Persistent State

SQLite writes land on /app/data with WAL and busy timeout enabled.

03

Deploy Contract

Docker image, web port 80, /healthz, persistent volume, production env.

04

Solo Ops

Built for a single VPS first. No managed database or second platform required.

The vibe path.

Vibe turns the initial idea into a conservative production shape: local first, dry-run before deploy, and no external services until the app earns them.

01

Intake

Capture the app idea and stack constraints from vibe.

02

Scaffold

Start from index-php: PHP 8.4, nginx, SQLite, Docker.

03

Shape

Build the actual app, keeping product code in one file.

04

Verify

Run scripts/check and package with the existing Dockerfile.

05

Deploy Later

Dry-run first, then pick a node, DNS, TLS, and secrets explicitly.

Deploy-ready, not deployed.

The app is ready for devopsellence solo mode. Real node provisioning, DNS, TLS, and secrets are intentionally later.

services:
  web:
    ports:
      - name: http
        port: 80
    healthcheck:
      path: /healthz
      port: 80
    volumes:
      - source: create-a-web-app-demonstrating-devopsellence-vib-data
        target: /app/data
    env:
      APP_ENV: production
      DB_PATH: /app/data/app.sqlite
1Health probe/healthz returns JSON without opening SQLite.
2Durable dataSQLite path points at a mounted production volume.
3Dry-run gateProduction mutation waits for devopsellence deploy --dry-run and user approval.

Field log.

A tiny persisted SQLite surface, just enough to prove state without expanding the stack.

Xiyar

Just posting xiyar to the world 🌎