Search
Lessons (11)
- Microkernel (Plugin) Architecture
… MarkdownPlugin[] = []; use(plugin: MarkdownPlugin): this { if (this.plugins.some((p) = p.name === plugin.name)) throw new Error( Plugin …
- O — Open/Closed Principle
… new behaviour is plugged in, the core stays untouched](/img/solid/ocp-plugins.svg) With classes and TypeScript …
- YAGNI: You Aren't Gonna Need It
… nobody asked for PDF, XML, plugins or custom delimiters class ExportEngine { constructor({ format = "csv", delimiter = ",", encoding = "utf-8 …
- API Gateway, BFF & Service Discovery
… http://orders-svc:8080 plugins: [jwt-auth] - path: /api/products service: http://catalog-svc:8080 plugins: [cache: { ttl …
- Kubernetes Cluster Architecture
… to a Service reaches the right pods CNI plugin Gives every pod its own IP and connects pods …
- Pods
… the flat pod network, provided by the CNI plugin). Multi-container patterns Sidecar A helper container that extends …
- What Is Software Architecture?
… monolith] MS[Microservices] ED[Event-driven] MK[Microkernel / plugins] SL[Serverless] end Group Styles Answers --- --- --- Application architecture Layered …
- Services & Ingress
… NetworkPolicies restrict that (your CNI plugin must support them, e.g. Calico or Cilium). yaml apiVersion: networking.k8s …
- Onion Architecture & Clean vs Hexagonal vs Onion
… In TypeScript you can get the same with separate packages, or with lint rules like eslint-plugin-boundaries …
- Vertical Slice Architecture & the Modular Monolith
… ts$)", pathNot: "^src/modules/$1/" }, }, ], }; Other options: eslint-plugin-boundaries , Nx module boundaries, separate packages in a monorepo …
- Behavioral Patterns II: Chain, Template, Iterator, Mediator, Memento, Visitor
… 2 + 3 × 4)" You've used it: Babel plugins and ESLint rules (they visit AST nodes), compilers, document …