# C plugins learning how to write a dynamic plugin loader in C! ## how does it work? the core application will scan a nearby `plugins` directory for plugins. the core expects this directory structure: - `pluginhost` - `plugins` - `plugin1` - `plugin1.so` - `plugin2` - `plugin2.so` each plugin must minimally contain two functions: - `int ari_plugin_load(void)` - `int ari_plugin_unload(void)` once loading all plugins, the core will call these functions within each detected plugin, and exit. ## how to use > [!WARNING] > this software only supports linux at the moment. no plans to support other > platforms at this time! - `make` to build the core application - `make all_plugins` to build all plugins - `make all` to build both! - `make clean` to tidy up the environment - once built, run `./pluginhost` to test the application.