Comprehensive Project Architecture Blueprint Generator
Configuration Variables
${PROJECT_TYPE="Auto-detect|.NET|Java|React|Angular|Python|Node.js|Flutter|Other"}
${ARCHITECTURE_PATTERN="Auto-detect|Clean Architecture|Microservices|Layered|MVVM|MVC|Hexagonal|Event-Driven|Serverless|Monolithic|Other"}
${DIAGRAM_TYPE="C4|UML|Flow|Component|None"}
${DETAIL_LEVEL="High-level|Detailed|Comprehensive|Implementation-Ready"}
${INCLUDES_CODE_EXAMPLES=true|false}
${INCLUDES_IMPLEMENTATION_PATTERNS=true|false}
${INCLUDES_DECISION_RECORDS=true|false}
${FOCUS_ON_EXTENSIBILITY=true|false}
Generated Prompt
"Create a comprehensive 'Project_Architecture_Blueprint.md' document that thoroughly analyzes the architectural patterns in the codebase to serve as a definitive reference for maintaining architectural consistency. Use the following approach:
1. Architecture Detection and Analysis
${PROJECT_TYPE == "Auto-detect" ? "Analyze the project structure to identify all technology stacks and frameworks in use by examining:
Project and configuration files
Package dependencies and import statements
Framework-specific patterns and conventions
Build and deployment configurations" : "Focus on ${PROJECT_TYPE} specific patterns and practices"}
${ARCHITECTURE_PATTERN == "Auto-detect" ? "Determine the architectural pattern(s) by analyzing:
Folder organization and namespacing
Dependency flow and component boundaries
Interface segregation and abstraction patterns
Communication mechanisms between components" : "Document how the ${ARCHITECTURE_PATTERN} architecture is implemented"}
2. Architectural Overview
Provide a clear, concise explanation of the overall architectural approach
Document the guiding principles evident in the architectural choices
Identify architectural boundaries and how they're enforced
Note any hybrid architectural patterns or adaptations of standard patterns
3. Architecture Visualization
${DIAGRAM_TYPE != "None" ? Create ${DIAGRAM_TYPE} diagrams at multiple levels of abstraction:
High-level architectural overview showing major subsystems
Component interaction diagrams showing relationships and dependencies
Data flow diagrams showing how information moves through the system
Ensure diagrams accurately reflect the actual implementation, not theoretical patterns : "Describe the component relationships based on actual code dependencies, providing clear textual explanations of:
Subsystem organization and boundaries
Dependency directions and component interactions
Data flow and process sequences"}
4. Core Architectural Components
For each architectural component discovered in the codebase:
Purpose and Responsibility
:
Primary function within the architecture
Business domains or technical concerns addressed
Boundaries and scope limitations
Internal Structure
:
Organization of classes/modules within the component
Key abstractions and their implementations
Design patterns utilized
Interaction Patterns
:
How the component communicates with others
Interfaces exposed and consumed
Dependency injection patterns
Event publishing/subscription mechanisms
Evolution Patterns
:
How the component can be extended
Variation points and plugin mechanisms
Configuration and customization approaches
5. Architectural Layers and Dependencies
Map the layer structure as implemented in the codebase
Document the dependency rules between layers
Identify abstraction mechanisms that enable layer separation
Note any circular dependencies or layer violations
Document dependency injection patterns used to maintain separation
6. Data Architecture
Document domain model structure and organization
Map entity relationships and aggregation patterns
Identify data access patterns (repositories, data mappers, etc.)
Document data transformation and mapping approaches
Note caching strategies and implementations
Document data validation patterns
7. Cross-Cutting Concerns Implementation
Document implementation patterns for cross-cutting concerns:
Authentication & Authorization
:
Security model implementation
Permission enforcement patterns
Identity management approach
Security boundary patterns
Error Handling & Resilience
:
Exception handling patterns
Retry and circuit breaker implementations
Fallback and graceful degradation strategies
Error reporting and monitoring approaches
Logging & Monitoring
:
Instrumentation patterns
Observability implementation
Diagnostic information flow
Performance monitoring approach
Validation
:
Input validation strategies
Business rule validation implementation
Validation responsibility distribution
Error reporting patterns
Configuration Management
:
Configuration source patterns
Environment-specific configuration strategies
Secret management approach
Feature flag implementation
8. Service Communication Patterns
Document service boundary definitions
Identify communication protocols and formats
Map synchronous vs. asynchronous communication patterns
Document API versioning strategies
Identify service discovery mechanisms
Note resilience patterns in service communication
9. Technology-Specific Architectural Patterns
${PROJECT_TYPE == "Auto-detect" ? "For each detected technology stack, document specific architectural patterns:" :
Document ${PROJECT_TYPE}-specific architectural patterns:
}
${(PROJECT_TYPE == ".NET" || PROJECT_TYPE == "Auto-detect") ?
"#### .NET Architectural Patterns (if detected)
Host and application model implementation
Middleware pipeline organization
Framework service integration patterns
ORM and data access approaches
API implementation patterns (controllers, minimal APIs, etc.)
Dependency injection container configuration" : ""}
${(PROJECT_TYPE == "Java" || PROJECT_TYPE == "Auto-detect") ?
"#### Java Architectural Patterns (if detected)
Application container and bootstrap process
Dependency injection framework usage (Spring, CDI, etc.)
AOP implementation patterns
Transaction boundary management
ORM configuration and usage patterns
Service implementation patterns" : ""}
${(PROJECT_TYPE == "React" || PROJECT_TYPE == "Auto-detect") ?
"#### React Architectural Patterns (if detected)
Component composition and reuse strategies
State management architecture
Side effect handling patterns
Routing and navigation approach
Data fetching and caching patterns
Rendering optimization strategies" : ""}
${(PROJECT_TYPE == "Angular" || PROJECT_TYPE == "Auto-detect") ?
"#### Angular Architectural Patterns (if detected)
Module organization strategy
Component hierarchy design
Service and dependency injection patterns
State management approach
Reactive programming patterns
Route guard implementation" : ""}
${(PROJECT_TYPE == "Python" || PROJECT_TYPE == "Auto-detect") ?
"#### Python Architectural Patterns (if detected)
Module organization approach
Dependency management strategy
OOP vs. functional implementation patterns
Framework integration patterns
Asynchronous programming approach" : ""}
10. Implementation Patterns
${INCLUDES_IMPLEMENTATION_PATTERNS ?
"Document concrete implementation patterns for key architectural components:
Interface Design Patterns
:
Interface segregation approaches
Abstraction level decisions
Generic vs. specific interface patterns
Default implementation patterns
Service Implementation Patterns
:
Service lifetime management
Service composition patterns
Operation implementation templates
Error handling within services
Repository Implementation Patterns
:
Query pattern implementations
Transaction management
Concurrency handling
Bulk operation patterns
Controller/API Implementation Patterns
:
Request handling patterns
Response formatting approaches
Parameter validation
API versioning implementation
Domain Model Implementation
:
Entity implementation patterns
Value object patterns
Domain event implementation
Business rule enforcement" : "Mention that detailed implementation patterns vary across the codebase."}
11. Testing Architecture
Document testing strategies aligned with the architecture
Identify test boundary patterns (unit, integration, system)
Map test doubles and mocking approaches
Document test data strategies
Note testing tools and frameworks integration
12. Deployment Architecture
Document deployment topology derived from configuration
Identify environment-specific architectural adaptations
Map runtime dependency resolution patterns
Document configuration management across environments
Identify containerization and orchestration approaches
Note cloud service integration patterns
13. Extension and Evolution Patterns
${FOCUS_ON_EXTENSIBILITY ?
"Provide detailed guidance for extending the architecture:
Feature Addition Patterns
:
How to add new features while preserving architectural integrity
Where to place new components by type
Dependency introduction guidelines
Configuration extension patterns
Modification Patterns
:
How to safely modify existing components
Strategies for maintaining backward compatibility
Deprecation patterns
Migration approaches
Integration Patterns
:
How to integrate new external systems
Adapter implementation patterns
Anti-corruption layer patterns
Service facade implementation" : "Document key extension points in the architecture."}
${INCLUDES_CODE_EXAMPLES ?
"### 14. Architectural Pattern Examples
Extract representative code examples that illustrate key architectural patterns:
Layer Separation Examples
:
Interface definition and implementation separation
Cross-layer communication patterns
Dependency injection examples
Component Communication Examples
:
Service invocation patterns
Event publication and handling
Message passing implementation
Extension Point Examples
:
Plugin registration and discovery
Extension interface implementations
Configuration-driven extension patterns
Include enough context with each example to show the pattern clearly, but keep examples concise and focused on architectural concepts." : ""}
${INCLUDES_DECISION_RECORDS ?
"### 15. Architectural Decision Records
Document key architectural decisions evident in the codebase:
Architectural Style Decisions
:
Why the current architectural pattern was chosen
Alternatives considered (based on code evolution)
Constraints that influenced the decision
Technology Selection Decisions
:
Key technology choices and their architectural impact
Framework selection rationales
Custom vs. off-the-shelf component decisions
Implementation Approach Decisions
:
Specific implementation patterns chosen
Standard pattern adaptations
Performance vs. maintainability tradeoffs
For each decision, note:
Context that made the decision necessary
Factors considered in making the decision
Resulting consequences (positive and negative)
Future flexibility or limitations introduced" : ""}
${INCLUDES_DECISION_RECORDS ? "16" : INCLUDES_CODE_EXAMPLES ? "15" : "14"}. Architecture Governance
Document how architectural consistency is maintained
Identify automated checks for architectural compliance
Note architectural review processes evident in the codebase
Document architectural documentation practices
${INCLUDES_DECISION_RECORDS ? "17" : INCLUDES_CODE_EXAMPLES ? "16" : "15"}. Blueprint for New Development
Create a clear architectural guide for implementing new features:
Development Workflow
:
Starting points for different feature types
Component creation sequence
Integration steps with existing architecture
Testing approach by architectural layer
Implementation Templates
:
Base class/interface templates for key architectural components
Standard file organization for new components
Dependency declaration patterns
Documentation requirements
Common Pitfalls
:
Architecture violations to avoid
Common architectural mistakes
Performance considerations
Testing blind spots
Include information about when this blueprint was generated and recommendations for keeping it updated as the architecture evolves."
architecture-blueprint-generator
安装
npx skills add https://github.com/github/awesome-copilot --skill architecture-blueprint-generator