Skip to main content

Castlecraft Engineer

Castlecraft Engineer is a Python library that provides the foundational building blocks for creating sophisticated, maintainable, and scalable software systems using Domain-Driven Design (DDD). It is the answer to the technical debt and architectural constraints that arise when complex applications are built with simple CRUD-centric frameworks.

The Challenge: When Simple Frameworks Aren't Enough

Rapid development frameworks are excellent for getting started, but as business logic grows in complexity, they can become a bottleneck. Their rigid abstractions often lead to a codebase that is difficult to test, maintain, and align with true business needs.

Our Solution: A Foundation for Domain-Driven Design

Castlecraft Engineer empowers you to build systems that last by providing a clear, contract-based foundation for DDD, Command Query Responsibility Segregation (CQRS), and Event-Driven Architecture.

Key Features:

  • Clear DDD Abstractions: Provides well-defined, testable contracts for Aggregates, Entities, Repositories, Commands, Queries, and Domain Events.
  • Decoupled Architecture: Encourages the separation of your core business logic from infrastructure concerns like web frameworks and databases. You choose the best tools for the job.
  • Built-in Core Services: Includes robust, out-of-the-box support for essential enterprise needs, including OIDC-based authentication and a flexible authorization contract to integrate with engines like Casbin, OpenFGA, or your own custom logic.
  • Flexibility and Control: While offering structure, Engineer is unopinionated about your choice of database or message broker, giving you full control over your technology stack.

The Foundation for AI-Powered Development

Castlecraft Engineer is more than just a library; it is the open-source, foundational layer for Castlecraft Architect. While Engineer provides the robust DDD building blocks, Architect leverages this foundation to offer AI-assisted scaffolding and development acceleration.

By starting with Engineer, you ensure your project is built on sound architectural principles, ready to scale and evolve with your business needs.

For detailed documentation, tutorials, and to get started, visit the official website at engineer.castlecraft.in.