gof-patterns

Identify and apply GoF design patterns to software problems.

14|Updated Jan 30, 2026
One-click install
npx skills add https://github.com/grndlvl/software-patterns --skill gof-patterns
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: gof-patterns
Source: https://github.com/grndlvl/software-patterns/tree/main/.claude/skills/gof-patterns
Command: npx skills add https://github.com/grndlvl/software-patterns --skill gof-patterns

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

The GoF Patterns skill helps engineers decide which well-established design pattern to apply to a problem, improving maintainability, flexibility, and reusability of software systems.

Core Features & Use Cases

  • Catalog of all 23 GoF patterns with concise intents and contexts.
  • Quick-reference decision guidance for creational, structural, and behavioral patterns.
  • Pseudocode examples and cross-pattern relationships to aid adaptation across languages and platforms.
  • Real-world example mappings to illustrate when to apply patterns during architecture, refactoring, and system evolution.

Quick Start

Analyze the design problem and select the most appropriate GoF pattern to apply in your codebase.

Frequently Asked Questions about gof-patterns

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

FAQPage Schema
How do I choose the right GoF design pattern for a software refactoring problem?

To choose the right GoF design pattern for software refactoring, identify the specific structural, creational, or behavioral problem you face. This skill provides decision guidance mapping common software architecture issues to the appropriate pattern from the 23-pattern catalog.

What is the difference between creational, structural, and behavioral design patterns?

Creational, structural, and behavioral design patterns differ by scope: creational patterns handle object creation, structural patterns compose object relationships, and behavioral patterns define object interaction. The skill provides concise intents and contexts to distinguish all 23 GoF patterns.

How do I apply object-oriented design patterns across different programming languages?

You apply object-oriented design patterns across different programming languages using language-agnostic pseudocode references. This skill provides pseudocode examples and cross-pattern relationships to help adapt and implement GoF patterns on any platform.

When should I use design patterns in software architecture decisions?

You should use design patterns in software architecture decisions when you need to improve system maintainability, flexibility, and reusability. The skill offers real-world example mappings to illustrate exactly when to apply patterns during system evolution.

Can I use this skill if I only know the basic concepts of the GoF catalog?

You can use this skill if you know the basic concepts of the GoF catalog, as it assumes this prerequisite knowledge. It supports your understanding by providing quick-reference decision guidance and real-world mappings rather than teaching fundamental object-oriented programming.

What are the limitations of applying GoF patterns to existing codebases?

A limitation of applying GoF patterns to existing codebases is the risk of over-engineering if the architectural fit is poor. The skill helps mitigate this by providing real-world example mappings and cross-pattern relationships to ensure correct adaptation during system evolution.