Skip to main content
.NETStandard2.0

Metalama. A tool for aspect-oriented programming (AOP) using templates written in pure C#.

Published
May 22, 2025
1y ago
Total Downloads
1.5M
1,543,694

Known Vulnerabilities (1)

Install

dotnet add package Metalama.Framework --version 2025.1.7
ProductVersions
.NET Standard
netstandard2.0

README

Metalama Logo

A Roslyn-based meta-programming framework for code generation, architecture validation and aspect-oriented programming in C#.

Metalama lets you write cleaner, more maintainable .NET code by automating repetitive patterns at compile time using aspects, templates, and compile-time logic. It integrates tightly with the Roslyn compiler, providing full control over how your code is built.

Why Metalama?

  • Write and maintain less code: Eliminate boilerplate by generating it dynamically during compilation, reducing code lines and bugs by up to 15%.
  • Validate your codebase in real time: Enforce adherence to design rules and conventions without waiting for code reviews.
  • Excel with large, complex, or legacy codebases: Metalama shines at scale and does not require architectural changes.

When to use it?

Metalama is ideal for:

  • Large projects: Automate repetitive patterns across dozens of entities and hundreds of properties or methods.
  • Large teams: Align developers on consistent patterns and practices.
  • Long lifecycle projects: Maintain quality over years of development.

It's main use cases are:

License

Metalama is released under the MIT license.

Some optional extensions and IDE tooling are released under a proprietary license. πŸ’Ž

Features

Resources

Quick Start

  1. Add the Metalama.Framework package to your project:

    dotnet add package Metalama.Framework
    
  2. Optionally, install Metalama Tools for Visual Studio Extension. It's free for individuals, non-commercial uses, and companies with up to 3 users.

  3. Explore the Metalama Marketplace for ready-made aspects or examples.

  4. Follow the Getting Started guide to create your first aspect.

Building Metalama from Source

Please check instructions here.

Contributing

We welcome contributions! Here's how you can help:

For more details, see Contributing to Metalama.

Support & Community

Related Packages

Changes from Previous Version

No structural changes between v2025.1.6 and v2025.1.7.

Adoption Assessment

A verified publisher signal is available. Assess fit from the package's supported frameworks, license and dependency graph rather than popularity alone.

Published vulnerability advisories exist for this version. Read the advisory and choose a remediated version before release.Compatibility metadata lists 1 target framework; confirm the exact target used by your application.

Related Guides & Workflows

Learn how to evaluate, integrate, or audit this package in your .NET project.