sidlynx.me is not meant to be a generic tech blog.
It is where I want to write down the architecture decisions, TypeScript patterns, and delivery trade-offs that survive contact with real projects. The focus is practical: code, boundaries, tests, migration paths, and the small choices that make a codebase easier or harder to change six months later.
Most posts will start from something concrete: a framework that shaped the wrong layer, a domain model that became too close to persistence, a test suite that revealed a bad boundary, or a pattern that made a team faster without making the system vague.
What belongs here
The center of gravity is TypeScript architecture.
That means DDD, Clean Architecture, hexagonal boundaries, framework adapters, testing strategy, frontend architecture, Node.js infrastructure, and the places where strong typing helps or gets in the way.
I care about the level where decisions become implementation: where a use case should live, what belongs in a domain object, how a repository boundary should look, when a framework should stay at the edge, and how to keep a system portable without turning it into ceremony.
I also want room for the less glamorous parts of senior engineering: trade-offs, constraints, migrations, team habits, and the difference between a pattern that looks clean in a diagram and one that holds under delivery pressure.
What does not belong here
I do not want this place to become a stream of hype posts, framework cheerleading, or tutorials that only repeat documentation with different variable names.
Theory is welcome only when it earns its keep in code. Opinions are welcome only when they come with the constraints that produced them.
This is also not the place for institutional material. The voice here is personal and practitioner-led: what I have seen, what I would do differently, and what I think is worth carrying into the next mission.
Coming next
The first real article is about why I stopped building DDD around NestJS, and why I now keep frameworks at the edges of TypeScript systems.
After that, the pipeline is deliberately focused: practical hexagonal architecture, Kafka in Node.js, tRPC as an adapter, event loop scheduling, AsyncLocalStorage, Vue patterns, and lessons from production work.
That is the shape: fewer hot takes, more architecture you can put under test.