From f3952ba559409b5027b0d94159583e62f6e0ee16 Mon Sep 17 00:00:00 2001 From: Aaron Fiore Date: Mon, 23 Feb 2026 12:40:47 -0800 Subject: [PATCH] markdown: move plugins documentation --- markdown/How-do-I-contribute.md | 19 +------------------ markdown/How-do-I-use-it.md | 22 ++++++++++++++++++++++ 2 files changed, 23 insertions(+), 18 deletions(-) diff --git a/markdown/How-do-I-contribute.md b/markdown/How-do-I-contribute.md index 5dee0d5..883038d 100644 --- a/markdown/How-do-I-contribute.md +++ b/markdown/How-do-I-contribute.md @@ -51,24 +51,7 @@ When developing non-code documentation, please work with the [dfi-docs](https:// #### Plugins -Plugins allow you to use docker-finance public APIs, libraries and environment (client and/or container) to meet your unique needs. These plugins are categorical; as in, there are client-side ("custom") plugins and repository ("repo") plugins. Additionally, there are subcategories such as `docker`, `finance` and `root` (respective to their modules). - -Client-side custom plugins allow you to drop-in any code that you write and keep them locally. Repository plugins are plugins that remain within the repository and will require a pull request for any changes to be made. Client-side custom plugins can be used for either client or container modules (see directory layout). - -Upon client `gen`, a client-side directory layout is generated. This layout consists of: - - `${DOCKER_FINANCE_CLIENT_PLUGINS}/client/docker` - - Custom plugins that function only client-side (`lib_docker`) - - `${DOCKER_FINANCE_CLIENT_PLUGINS}/container/{finance,root}` - - Custom plugins that function only container-side (`lib_finance`, `root`) - -**WARNING: don't change the parent client-side directory layout** (although, you can add subdirectories): - - e.g., `${DOCKER_FINANCE_CLIENT_PLUGINS}/container/finance/my_experimental_plugins/{file1.ext,file2.ext}` - -This client-side "custom" layout somewhat mirrors the repository's plugins layout (see [`client/plugins`](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/plugins) and [`container/plugins`](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/container/plugins)). - -For more information, see the example plugins and help usage of each module, e.g.; `plugins help` or `help()`. - -> Note: for custom plugins within directory `docker` and `finance` that utilize the shell, any language can be used so long as the file is executable, reads the shell environment and can initiailize their respective libraries (`lib_docker`, `lib_finance`). +Primary plugin documentation can be found [here](How-do-I-use-it.md#plugins). Technically speaking, you can write custom plugins and never need to merge with the repository but if you feel that the plugin(s) would be beneficial to the public, add testcases and send everything with a [pull request](#pull-request). #### Pull Request diff --git a/markdown/How-do-I-use-it.md b/markdown/How-do-I-use-it.md index 41d5261..2af4923 100644 --- a/markdown/How-do-I-use-it.md +++ b/markdown/How-do-I-use-it.md @@ -21,6 +21,7 @@ - **[How do I use it?](#how-do-i-use-it)** * [Mostly-Unified CLI](#mostly-unified-cli) * [Flow Layout](#flow-layout) + * [Plugins](#plugins) * [Caveats & Oddities](#caveats--oddities) ## How do I use it? @@ -167,6 +168,27 @@ All `times` related files will reside in `${DOCKER_FINANCE_CONTAINER_FLOW}/times See the container `times help` command for details. +### Plugins + +Plugins allow you to use docker-finance public APIs, libraries and environment (client and/or container) to meet your unique needs. These plugins are categorical; as in, there are client-side ("custom") plugins and repository ("repo") plugins. Additionally, there are subcategories such as `docker`, `finance` and `root` (respective to their modules). + +Client-side custom plugins allow you to drop-in any code that you write and keep them locally. Repository plugins are plugins that remain within the repository and will require a pull request for any changes to be made. Client-side custom plugins can be used for either client or container modules (see directory layout). + +Upon client `gen`, a client-side directory layout is generated. This layout consists of: + - `${DOCKER_FINANCE_CLIENT_PLUGINS}/client/docker` + - Custom plugins that function only client-side (`lib_docker`) + - `${DOCKER_FINANCE_CLIENT_PLUGINS}/container/{finance,root}` + - Custom plugins that function only container-side (`lib_finance`, `root`) + +**WARNING: don't change the parent client-side directory layout** (although, you can add subdirectories): + - e.g., `${DOCKER_FINANCE_CLIENT_PLUGINS}/container/finance/my_experimental_plugins/{file1.ext,file2.ext}` + +This client-side "custom" layout somewhat mirrors the repository's plugins layout (see [`client/plugins`](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/client/plugins) and [`container/plugins`](https://gitea.evergreencrypto.co/EvergreenCrypto/docker-finance/src/branch/master/container/plugins)). + +For more information, see the example plugins and help usage of each module, e.g.; `plugins help` or `help()`. + +> Note: for custom plugins within directory `docker` and `finance` that utilize the shell, any language can be used so long as the file is executable, reads the shell environment and can initiailize their respective libraries (`lib_docker`, `lib_finance`). + ### Caveats & Oddities #### Caveats & Oddities: Flow