Project "Caravela" 0.3 /

PostSharp "Caravela"

PostSharp "Caravela" is a meta-programming framework for C# based on Roslyn, Microsoft's managed compiler platform.

Note

Caravela is currently in EARLY PREVIEW stage and is not intended for commercial use. Any version of the Caravela preview will stop working 90 days after it has been built. To continue using it, you will need to update to a newer preview.

Caravela has the following principal features:

Feature Description
Aspect-Oriented Programming Encapsulate repetitive patterns of code (such as logging, caching, INotifyPropertyChanged, multi-threading) into executable artifacts named aspects that add behaviors to your code at compile time, so that your source code remains clean and succinct — easier to read and maintain.
Code Generation Generate repetitive code, in the editor or at compile time, instead of writing it by hand.
Code Validation Verify that hand-written code complies to team rules and conventions.

Documentation structure

Site Description
Caravela Conceptual Documentation Conceptual and procedural documentation
Caravela API Documentation API reference

The conceptual documentation is hosted on https://github.com/postsharp/Caravela.Documentation. You can suggest improvements and corrections using the discussions board, and even submit a pull request.

Getting started

  1. Adding Caravela to Your Project
  2. Creating Simple Aspects

Examples

Link Description
Try Caravela Try Caravela from your browser.
Caravela.Samples A dozen of open-source examples in a GitHub repo.

Licensing

PostSharp "Caravela" is currently released under the terms of the Evaluation License of PostSharp.

Feedback

If you have any feedback regarding Caravela, please open an issue, start a discussion, or contact us directly at hello@postsharp.net.