Welcome to Castlecraft Architect!
Design Smarter. Build Faster.
Castlecraft Architect is a powerful ui, command-line tool and backend service designed to streamline the creation and evolution of software projects based on Domain-Driven Design (DDD) principles. It empowers developers and architects to:
- Scaffold new projects with a robust, DDD-aligned structure.
- Generate boilerplate code for common DDD components (Aggregates, Entities, Value Objects, Services, Repositories, Commands, Queries, Events, DTOs, and more).
- Manage architectural changes systematically through a revision-based system.
- Maintain consistency across your codebase with enforced naming conventions and project structures.
Why Castlecraft Architect?
In the complex world of software development, maintaining a clear, understandable, and scalable architecture is paramount. Castlecraft Architect helps you achieve this by:
- Accelerating Development: Reduce manual boilerplate coding and focus on core business logic.
- Enforcing Best Practices: Embed DDD principles and architectural patterns directly into your project's foundation.
- Improving Consistency: Ensure that all team members are building components in a standardized way.
- Facilitating Collaboration: Provide a shared understanding of the system's structure and components.
- Evolving with Confidence: Manage architectural changes as explicit, trackable revisions.
Core Philosophy
At its heart, Castlecraft Architect is built upon the principles of Domain-Driven Design. We believe that a deep understanding of the business domain, translated into a well-defined model, is key to building effective software. The tool encourages:
- Clear Bounded Contexts: Isolating different parts of your domain.
- Explicit Component Types: Using well-defined patterns for different architectural responsibilities.
- Layered Architecture: Promoting separation of concerns (Presentation/API, Application, Domain, Infrastructure).
- CQRS (Command Query Responsibility Segregation): Structuring your application for clear data flow and distinct read/write operations.
Key Features
- Comprehensive Component Generation: From domain aggregates to API routers.
- CLI for Power Users: Efficiently interact with the tool via the command line.
- API for Integration: Backend API for programmatic interaction, supporting optional Authentication and Authorization.
- Contextual Information Generation: Output detailed tool context, OpenAPI specs, and component schemas, useful for LLMs, documentation, and team onboarding.
- Revision Management System: Apply, track, and manage architectural changes systematically.
- Frontend Application: Architect has a web ui to enable collaboration between Domain Experts, Architects and Developers.
Who is this for?
- Software Architects: Designing and evolving system structures.
- Development Teams: Building applications based on DDD principles.
- Developers: Looking to quickly scaffold components and adhere to architectural guidelines.
- Anyone starting a new project who wants a strong, DDD-based foundation.
Getting Started
Ready to dive in? Head over to our Getting Started Guide to learn how to install Castlecraft Architect and generate your first project.
Navigating These Docs
This documentation site is structured to help you find the information you need quickly:
- Guides: Practical, step-by-step instructions for common tasks and extending Architect.
- Core Concepts: Explanations of the fundamental ideas and principles behind Architect.
- CLI Reference: Detailed information on all available command-line interface commands.
- Component Reference: In-depth documentation for each manageable component type, including its purpose, definition schema, and naming conventions.
- API Reference: Details on the backend API endpoints.
We're excited to see what you build with Castlecraft Architect!