SMS remains one of the most reliable communication channels available today, with open rates exceeding 90%. Whether you are building an OTP SMS API for authentication, setting up transactional alerts, or automating marketing workflows, a robust SMS API integration is a powerful addition to any stack. In this tutorial, we will explore how a REST SMS API works and walk through a practical implementa
If you've worked with Drupal long enough, you've faced this decision: Do I build a custom module for this or can ECA handle it? Use ECA When The logic is workflow-based Non-developers need to maintain it ECA workflows live in the admin UI. Your client or site admin can read, modify, and debug them without touching code. A custom module cannot offer that. Speed matters A workflow that would tak
I build mdedit.io — a no-account Markdown editor with live preview, collaboration and AI assistance I’m looking for feedback on the public beta of mdedit.io: https://mdedit.io Repository: https://github.com/MatthiasHertel21/mdedit mdedit.io is a browser-based Markdown editor focused on writing, structuring, previewing, sharing and exporting longer Markdown documents. It does not require an accou
The first article on this blog explained how it was built in 30 minutes with Claude Code. Naturally, a blog needs comments. Same constraints: no database, no external dependencies, no Disqus tracking visitors. Just PHP + JSON files. Built in one session with Claude Code — the interesting part wasn't the code, it was the security audit that followed. A comment system without a database seems trivia
I was skeptical at first. Not about AI in general — but about whether it would actually fit into my workflow. I work mostly with legacy PHP and jQuery. The kind of codebase that was written before half the frameworks people talk about today even existed. Some Vue.js here and there in newer parts, but a lot of the core is raw PHP, procedural logic, and jQuery doing things you probably don't want to
Introduction Backup plugins are useful — but they are not a real disaster‑recovery strategy. In this article, I break down the real reasons why backup plugins fail, what actually happens during a server‑level crash, and how to build a recovery plan that works in the real world. Backup Plugins Only Work When WordPress Works A backup plugin depends on: WordPress running PHP running MySQL running the
The drift problem Every project that ships a translated README has the same lifecycle: Someone writes README.md in English. A contributor opens a PR with README.zh.md. Great. Three months later, English has six new sections. Chinese has the original. A second translator opens README.es.md. Spanish gets translated from… which version? The current README.md? Or README.zh.md, by accident, because t
§0 — Hook The work-pool schema that runs the paragraf project names three work types: spec, package, and issue-bucket. Only two of the three have a defined The first article introduced a methodology that produced a working library — Two parallel improvements happened in the one week that followed. The first was The second improvement was a sprint. Two new color-related packages shipped under The