Luca Nerlich - Tech Documentation
Reference documentation and practical guides for Adobe Experience Manager, Java, JavaScript, Strapi, and software design patterns. Every page is built around real-world code examples and common pitfalls.
Start Here - Beginners' Guides
Multi-chapter guided introductions, from zero to working knowledge:
- AEM Beginners' Guide - 14 chapters covering JCR, Sling, OSGi, components, HTL, Sling Models, templates, clientlibs, and deployment
- Java Beginners' Guide - 17 chapters from variables and control flow through streams, testing, and build tools
- JavaScript Beginners' Guide - 15 chapters covering fundamentals, the DOM, events, TypeScript, error handling, and deployment
- Strapi Beginners' Guide - 12 chapters on content modeling, REST API, authentication, lifecycle hooks, and deployment
AEM
Comprehensive Adobe Experience Manager documentation covering the full stack.
- Architecture - How Sling, JCR, and OSGi fit together in the request processing pipeline
- Custom Component Guide - End-to-end walkthrough: Sling Model, dialog, HTL template, and clientlib
- Component Dialogs - Copy-paste reference for Granite UI dialog widgets
- Sling Models - Annotations, injectors, exporters, and best practices
Java
Core Java language guides - practical examples, pitfall tables, and patterns.
- Streams and Collectors - Stream pipelines, groupingBy, partitioningBy, and parallel streams
- Concurrency - Threads, ExecutorService, CompletableFuture, and Virtual Threads
- Modern Java Features - Records, sealed classes, pattern matching (Java 11-21)
- Generics - Bounded types, wildcards, PECS, and type erasure
JavaScript
Practical JavaScript and TypeScript topics with code examples and browser compatibility notes.
- Async/Await Patterns - Promises, error handling, concurrency control, and pitfalls
- Intl API Formatting - Locale-aware number, date, and currency formatting
- Error Handling - Custom error classes, global handlers, and structured reporting
Strapi
Guides for building and extending a Strapi headless CMS.
- Custom Controllers and Services - Extending core CRUD, custom actions, and service delegation
- Relations and Population - Deep population, filtering, and performance optimization
- Authentication and Permissions - JWT flow, RBAC, API tokens, and OAuth providers
Design Patterns
GoF patterns explained with Java and TypeScript examples - creational, structural, and behavioural - plus a section on anti-patterns and common misuse.
- Pattern Overview - When and why to use each pattern
- Glossary - Quick reference for design pattern terminology
More Topics
- Content Modeling - CMS-agnostic guide to content types, relations, and performance pitfalls
- Git - Beginners guide covering branching, merging, rebasing, workflows, and commit conventions
- Web Performance - Core Web Vitals, Lighthouse, image optimization, caching, and CDN patterns
- Semantic HTML - Element reference, accessibility, and common anti-patterns
- Build a Simple Blog Page - Super-beginner tutorial: a working blog with only HTML, CSS, and vanilla JS, plus how Vite fits in later
- Mermaid Diagrams - Flowcharts, sequence diagrams, class diagrams, and more
Projects
- Steam5 - Steam review guessing game. Spring Boot, Next.js, PostgreSQL
- RSS-Analyzer - Audio RSS feed parser with aggregated release stats. Java, Next.js
- EZ-Budget - Monthly and yearly budget tracker. Next.js, Bootstrap CSS
- Mindestens 10 Zeichen - Community gaming and media blog. Docusaurus 3
- First Class Performance - Design, development, and hosting. Strapi, Next.js, Material UI
- Complete Motion CrossFit - Design, development, and hosting. Next.js, SCSS
- Nerlich / Puls GbR - Business website. Next.js, SCSS
All projects are self-hosted on a Hetzner VPS using Coolify and Docker. Lightweight, GDPR-friendly analytics via self-hosted Umami.
Contact
Questions, corrections, or content requests? Open a GitHub Issue or reach out at luca.nerlich@gmail.com.