This project is a WPF-based plugin system built using the Managed Extensibility Framework (MEF). It provides a modular architecture for loading and managing plugins dynamically.
- MEF.Launcher: The main application project that bootstraps the application and manages plugins.
- MEF.Launcher.Contract: Contains interfaces and contracts for plugins and application services.
- MEF.Launcher.Platform: Provides platform-specific implementations and utilities.
- Plugins: Contains example plugins that demonstrate how to extend the application.
- BasicPlugin: A simple plugin example.
- ExamplePlugin: Another example plugin.
- Bootstrapper: Initializes the application, sets up the MEF container, and loads plugins.
- PluginManager: Manages the loading and unloading of plugins.
- AppManager: Handles the main UI and application state.
- DialogManager: Manages dialog windows and busy indicators.
- Caliburn.Micro: Used for MVVM and UI management.
- log4net: Used for logging.
- MaterialDesignThemes: Used for UI styling.
- System.ComponentModel.Composition: Used for MEF.
The project targets .NET Framework 4.5.
- Clone the repository.
- Open the solution in Visual Studio.
- Build and run the application.
To create a new plugin, implement the IPlugin interface and use the PluginBase class as a starting point. Ensure your plugin is exported using MEF attributes.
[Specify the license here]