I explore how worlds work.
Their rules, their structures, and how to give them shape in an engine of my own.
Web and C++: here’s what I build with both, and what I’m learning along the way. About me →
Worlds
From scratch, in C++ and OpenGL. My favourite part, and the one teaching me the most.
VenRad
My graphics engine, from scratch. It’s where all the other pieces come together.
- RendererLight, materials and thousands of objects on screen.
- Cave generatorRooms that grow on their own and connect to each other.
- Zoned worldEach zone is generated once and isn’t rebuilt when you come back.
- Entity systemWhat keeps track of everything that lives and moves.

Language generator
Every civilisation rolls the dice and gets its own grammar.
- The grammarWord order, questions, pronouns.
- The sentencesBuilds sentences with that grammar.
blue verb tense · pink negation · amber question particle
And small pieces along the way, like a logging library for C++.
Applications
My trade for six years, for clients like Endesa. I still do it, now for myself too.
Booking platform
A booking SaaS: one microservices API for several businesses, each with its own website.
- Multi-tenantBy subdomain and by header.
- 12 microservicesJava and Spring Boot, hexagonal.
- AsyncRabbitMQ for notices and reminders.
- MetricsPrometheus and Grafana.

WhatsApp library
Born for the booking platform, then published so anyone can use it.
open source · Maven Central// One call, and the customer gets their reminder sender.sendTemplateByType( customer.getPhone(), "appointment_reminder", List.of(name, service, date) );
Gracias por confiar en nosotros:
Servicio Corte de cabello
Fecha: 05/03/2026 · 09:30
¿Confirmas la cita?09:12Confirmo
All of this runs on my own server: Linux, Docker and Nginx. This site included.