From bef5ccd5c3ec3896a03a606a89cd80c4084410e8 Mon Sep 17 00:00:00 2001 From: olaru Date: Tue, 1 Sep 2026 15:38:48 +0300 Subject: [PATCH 1/3] Add anchors --- src/App/templates/app/index.html.twig | 31 +++++++++++++-------------- 1 file changed, 15 insertions(+), 16 deletions(-) diff --git a/src/App/templates/app/index.html.twig b/src/App/templates/app/index.html.twig index a521001..d61536b 100644 --- a/src/App/templates/app/index.html.twig +++ b/src/App/templates/app/index.html.twig @@ -1,17 +1,16 @@ {% extends '@layout/default.html.twig' %} {% block json_ld %} {{ include('@jsonld/index.jsonld.twig') }} {% endblock %} {% block title %}A PSR-15 compliant application{% endblock %} -{% block head_links %}{% endblock %} {% block content %}
-
+
PSR-15 . middleware-first architecture

A headless platform for building modern web applications

Dotkernel is a set of open-source PHP applications - REST API, admin, and queue - that ship assembled on Mezzio and Laminas, over one shared Doctrine domain layer called Core. - OAuth2, RBAC, HAL, and a generated OpenAPI spec are wired together on install, not left for you to choose.

+ OAuth2, RBAC, HAL, and a generated OpenAPI spec are wired together on install, not left for you to choose.

-
-
Request lifecycle
+
+
Request lifecycle
RouterFastRoute
@@ -62,36 +61,36 @@
- Doctrine, not Active Record +

Doctrine, not Active Record

- Explicit wiring, no magic +

Explicit wiring, no magic

- One domain, three deployables + Lightning-fast performance

One domain, three deployables

- Dependencies that move slowly + Easier maintenance and onboarding

Dependencies that move slowly

-
+
Headless Platform

Three applications, one platform

API, Admin, and Queue declare the same Core namespaces - the same entities, repositories, and services. - A User means the same thing to the endpoint that creates it, the admin screen that moderates it, and the worker that emails it. - Three deployables that scale independently and never disagree about the domain.

+ A User means the same thing to the endpoint that creates it, the admin screen that moderates it, and the worker that emails it. + Three deployables that scale independently and never disagree about the domain.

@@ -206,7 +205,7 @@
-
+
Other skeletons @@ -259,9 +258,9 @@
-
+
{% if posts is defined and posts is iterable %} -
+
-
+
Headless Platform

Three applications, one platform

API, Admin, and Queue declare the same Core namespaces - the same entities, repositories, and services. - A User means the same thing to the endpoint that creates it, the admin screen that moderates it, and the worker that emails it. - Three deployables that scale independently and never disagree about the domain.

+ A User means the same thing to the endpoint that creates it, the admin screen that moderates it, and the worker that emails it. + Three deployables that scale independently and never disagree about the domain.

@@ -205,7 +206,7 @@
-
+
Other skeletons @@ -258,9 +259,9 @@
-
+
{% if posts is defined and posts is iterable %} -
+
From the blog From aeeb59ec01e5e191585fca0b688feb41932f5465 Mon Sep 17 00:00:00 2001 From: olaru Date: Tue, 1 Sep 2026 16:37:26 +0300 Subject: [PATCH 3/3] Add anchors into architecture page --- src/Page/templates/page/architecture.html.twig | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/Page/templates/page/architecture.html.twig b/src/Page/templates/page/architecture.html.twig index d1f88be..f496261 100644 --- a/src/Page/templates/page/architecture.html.twig +++ b/src/Page/templates/page/architecture.html.twig @@ -168,7 +168,7 @@
-
+
Middleware flow @@ -398,7 +398,7 @@
-
+
Library flow

The packages underneath, in the same order

@@ -447,7 +447,7 @@
Response
-
+

Flow for sending an email

Identical until the domain layer, where dot-mail joins in.