design-patterns

Guide implementing design patterns like Hexagonal Architecture and Strategy in Java and Spring Boot.

Updated Feb 24, 2026
One-click install
npx skills add https://github.com/Exar-lab/Bank-project --skill design-patterns-exar-lab
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: design-patterns
Source: https://github.com/Exar-lab/Bank-project/tree/main/.agents/skills/design-patterns
Command: npx skills add https://github.com/Exar-lab/Bank-project --skill design-patterns-exar-lab

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) and references (resource) components.

What problem does it solve?

This Skill provides guidance on implementing and recognizing essential design patterns in software architecture, ensuring efficient and maintainable code.

Core Features & Use Cases

  • Pattern Recognition: Identify and apply design patterns such as Hexagonal Architecture, Strategy, Factory, Repository, Outbox, and Observer.
  • Architecture Compliance: Review and ensure adherence to best practices in software design.
  • Use Case: When developing a new feature in the Banco Service, use this Skill to choose the appropriate design pattern and ensure architectural consistency.

Quick Start

Use the design-patterns skill to review the architecture of the new account creation feature in the Banco Service.

Frequently Asked Questions about design-patterns

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement Hexagonal Architecture in a Spring Boot application?

To implement Hexagonal Architecture in a Spring Boot application, you isolate the domain core from external concerns using ports and adapters. This Skill guides you in structuring your code to ensure efficient, maintainable architecture compliance for complex systems.

What is the best way to choose between Strategy and Factory patterns for software architecture?

Choosing between Strategy and Factory patterns depends on your software architecture goal: Strategy handles interchangeable algorithm behaviors, while Factory manages object creation. This Skill helps recognize and apply the appropriate pattern for architectural consistency.

When do I need the Outbox pattern in software architecture?

You need the Outbox pattern in software architecture when reliably dispatching events alongside database transactions. This Skill provides guidance on recognizing and implementing the Outbox pattern to ensure data consistency within complex systems.

Do I need to know Java and Spring Boot to use these software architecture patterns?

Yes, you need knowledge of Java and Spring Boot to effectively use these software architecture patterns. This Skill is aimed at software architects and developers working on complex systems, providing guidance tailored to this technology stack.

How can I ensure architecture compliance when adding a new feature to an existing service?

To ensure architecture compliance when adding a new feature, use this Skill to review your design and choose appropriate patterns like Repository or Observer. It helps verify adherence to best practices for efficient and maintainable code.

Why use the Repository pattern instead of direct database access in software architecture?

Use the Repository pattern in software architecture to abstract data persistence details away from the domain logic. This Skill guides you in recognizing and applying the Repository pattern to maintain clean, efficient architectural boundaries.