Skip to content

anvil-rs/anvil

Repository files navigation

Anvil

Anvil is a modular templating system for creating user-defined scaffolding systems.

Ethos

  • Configuration in code.
  • Interchangeable components.
  • The library provides the building blocks, not the solutions.

Inspiration:

Goals

  1. Modularity: Provide a structure where modules can be created, extended, and reused without tight coupling.
  2. Extensibility: Allow users to define their custom behaviors and integrate new modules with minimal effort.
  3. Configurability: Ensure that the system can be configured programmatically, providing users with complete control over their generated code structure and dependencies.
  4. Scalability: Support projects of varying sizes and complexities without sacrificing performance or usability.
  5. Minimal Coupling: Avoid creating a central module that ties everything together, ensuring that modules remain independent.