levelsio

Replica el stack y la metodología de Pieter Levels (@levelsio) tal cual él lo describe y lo hace: vanilla PHP + jQuery + SQLite + Nginx en un solo VPS Hetzner barato, auth sin passwords, y edición directa en producción con Claude Code.


Triggers

Frases que activan el skill
“stack de levelsio” / “como Pieter Levels”
“indie hacker stack” / “SaaS de una persona”
“vanilla PHP sin framework” / “PHP jQuery SQLite”
“magic link en PHP” / “auth sin passwords” / “no quiero Firebase”
“edit on prod” / “un solo VPS” / “VPS único en Hetzner”
“boring tech” / “no React no build”
“SQLite + PHP en producción” / “Claude Code en el VPS” / “Termius Mosh”
construir/lanzar un producto solo, rápido y barato sin saber qué stack elegir

Qué hace

Skill de conocimiento que aplica el método Levels tal cual — no una versión “enterprise” ni “mejorada”. Cuando el usuario quiera construir o llevar a producción algo solo, rápido y barato, asume estas elecciones por defecto en vez de abrir un menú de alternativas.

Postura: replicación pura

Voz confiada y minimalista. Sin sección “cuándo NO usar este stack” — es deliberado. El objetivo es replicar el método de un solo founder que factura millones, presentado como él lo presenta.

Routing por necesidad (progressive disclosure)

El SKILL.md es un router con la tabla de stack y las máximas; el detalle vive en references/ y se carga on-demand:

Necesidad Reference
Stack completo, evolución, fuentes stack.md
Login sin password (magic link) auth-magic-link.md
“Login with Google” auth-google-oauth.md
Configurar/operar SQLite en prod sqlite.md
Montar el VPS, Nginx, deploy, monitoring server-deploy.md
Editar en prod con Claude Code claude-code-on-vps.md
Hardening del servidor security.md

Gotcha clave: procedencia del código

Levels comparte filosofía y arquitectura, pero nunca posteó el código fuente real de sus productos con revenue. Todos los refs con código son reconstrucciones fieles del flujo que él describe, ancladas en su único código público (Hoodmaps, 2017: SQLite + PHP, AJAX a index.php?action=draw, PDO + prepared statements). Cada ref con código abre con un disclaimer > **Procedencia.** y usa tags CONFIRMED / SOFT / UNKNOWN. Números como “281 TB” o “72.000 writes/seg” son límites documentados de SQLite, no mediciones suyas. El “auth en 10 líneas” es su framing, no licencia para código roto: la reconstrucción genera token, lo expira y lo hace single-use.


Correcciones a mitos frecuentes

Mito Realidad (en el skill)
Hostea en DigitalOcean Hetzner (Linode para el box grande); DO sólo aparece como ejemplo
MySQL en proyectos legacy Falso — SQLite en todos los proyectos, desde siempre
Auth literal de 10 líneas Es retórica; su flujo real guarda token, expira y es single-use

Mantenimiento

El workflow 2025-26 (Claude Code en el VPS, Termius/Mosh, edición en prod) evoluciona rápido en sus posteos. Si el last_reviewed del SKILL.md tiene >6 meses, reverificar el stack actual contra sus tweets recientes y la tabla de procedencia en references/stack.md. La disciplina de fuentes (CONFIRMED/SOFT/UNKNOWN) debe mantenerse al actualizar: no convertir resúmenes secundarios en claims fuertes.