Luca Nerlich -- Tech Documentation
Practical guides and reference documentation for Adobe Experience Manager, Java, JavaScript, and software design patterns. Every page focuses on real-world examples, common pitfalls, and patterns you can apply immediately.
Documentation
AEM
Comprehensive Adobe Experience Manager documentation covering the full stack -- from architecture and components to Dispatcher, security, and AEM as a Cloud Service.
- Architecture -- How Sling, JCR, and OSGi fit together in the AEM request processing pipeline
- Component Dialogs -- Copy-paste reference for the most useful Granite UI dialog widgets
- Custom Component Guide -- Step-by-step walkthrough: Sling Model, dialog, HTL template, and clientlib
- HTL Templates -- Sightly syntax, block elements, expression language, and XSS protection
- Sling Models -- Annotations, injectors, exporters, testing, and best practices
- Client Libraries -- Clientlib categories, dependencies, embedding, and the HTML Library Manager
- Groovy Console -- Interactive scripting for content operations, migrations, and debugging
- Workflows -- Business process mapping, custom process steps, and launchers
Java
Core Java language guides independent of any framework -- practical examples, pitfall tables, and patterns you can apply immediately.
- Streams and Collectors -- Stream pipelines, groupingBy, partitioningBy, and parallel streams
- Modern Java Features -- Records, sealed classes, pattern matching, and a Java 11-to-21 feature table
- Concurrency -- Threads, ExecutorService, CompletableFuture, and Virtual Threads
- Generics -- Bounded types, wildcards, the PECS principle, and type erasure
- Testing -- JUnit 5, Mockito mocking, AssertJ assertions, and parameterised tests
- Error Handling -- Checked vs unchecked exceptions, try-with-resources, and the Result pattern
JavaScript
Practical JavaScript and TypeScript topics with code examples and browser compatibility notes.
- Intl API Formatting -- Locale-aware number, date, currency, and relative time formatting
- Async/Await Patterns -- Promises, error handling, concurrency control, and common pitfalls
- Error Handling -- Custom error classes, global handlers, and structured error reporting
Design Patterns
GoF design patterns explained with Java and TypeScript examples: creational, structural, and behavioural patterns, plus a dedicated section on anti-patterns and common misuse.
Other
Shell and terminal setup, Docusaurus tips, a comprehensive Mermaid diagram guide, useful link collections, and practical Strapi CMS guides.
- Strapi: Custom Controllers and Services -- Extending core CRUD, custom actions, and service delegation
- Strapi: Relations and Population -- Deep population, filtering, and performance optimization
- Strapi: Authentication and Permissions -- JWT flow, RBAC, API tokens, and OAuth providers
- Mermaid Diagram Guide -- Flowcharts, sequence diagrams, class diagrams, and more
Featured content
A selection of the most useful pages across all categories:
- Component Dialog Examples -- Copy-paste Granite UI dialog widgets for AEM components
- AEM Architecture -- How Sling, JCR, and OSGi fit together
- Streams and Collectors -- Java Streams API from basics to advanced collectors
- Concurrency and Virtual Threads -- Modern Java concurrency with practical examples
- Sling Model Annotations --
@Self,@Inject,@ChildResource, and more - AEM Workflows -- From business process mapping to custom workflow steps
- Mermaid Diagram Guide -- Flowcharts, sequence diagrams, class diagrams, and more
- Multi-Tenancy ui.frontend -- Multi-tenant frontend architecture for AEM
- Templates and Policies -- Editable templates, allowed components, Style System
- ACLs and Permissions -- Repoinit, Netcentric ACL Tool, service users
Projects
Professional
- First Class Performance -- Design, development, and hosting. Strapi CMS, Next.js, React, SCSS, Material UI
- Complete Motion CrossFit -- Design, development, and hosting. Next.js, React, SCSS
- Nerlich / Puls GbR -- GbR business website. Next.js, React, SCSS
Hobby
- Steam5 -- Steam review guessing game. Spring Boot, Next.js, React, PostgreSQL
- RSS-Analyzer -- Audio RSS feed parser with aggregated release stats. Java, Next.js, React
- EZ-Budget -- Monthly and yearly budget tracker. Next.js, React, Bootstrap CSS
- Mindestens 10 Zeichen -- Community gaming and media blog. Docusaurus 3
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.