diff --git a/Writerside/sdh.tree b/Writerside/sdh.tree
index a3a192d..1ed08eb 100644
--- a/Writerside/sdh.tree
+++ b/Writerside/sdh.tree
@@ -22,6 +22,7 @@
+
@@ -56,6 +57,7 @@
+
diff --git a/Writerside/topics/Alerting.md b/Writerside/topics/Alerting.md
new file mode 100644
index 0000000..7ad0a9a
--- /dev/null
+++ b/Writerside/topics/Alerting.md
@@ -0,0 +1,3 @@
+# Alerting over events
+
+Start typing here...
\ No newline at end of file
diff --git a/Writerside/topics/Alerts.md b/Writerside/topics/Alerts.md
index 9f11841..979433a 100644
--- a/Writerside/topics/Alerts.md
+++ b/Writerside/topics/Alerts.md
@@ -1,3 +1,5 @@
# Alerts
Alerts (based on UI Toasts) are a safety feature for instant notification of an issue that occurred.
+
+[//]: # (TODO)
\ No newline at end of file
diff --git a/Writerside/topics/Command-Invoker.md b/Writerside/topics/Command-Invoker.md
index 240ba3f..76c1333 100644
--- a/Writerside/topics/Command-Invoker.md
+++ b/Writerside/topics/Command-Invoker.md
@@ -1,3 +1,71 @@
# Command Invoker
-Start typing here...
\ No newline at end of file
+The command invoker interface abstracts and decouples the functionality of calling commands to the backend.
+
+## Two types of commands {collapsible="true"}
+
+It is important to note the difference in the underlying split between types of commands:
+
+- Pod command (used in the ``): a command that acts like a message to the pod.
+ These commands are entirely meant as communication to the pod from the GUI.
+- Backend command (used in the ``): a command that triggers auxiliary backend functionality (e.g.
+ loading procedures, stopping the server, initiating connection, etc.)
+
+> Despite this, the interface of the Command Invoker has a single method to invoke a command.
+> The actual implementation of the difference is done by specifying the name of the function for triggering such
+> a pod message command inside the `SerpentaConfig` using the `pod_command_name` field.
+{style="note"}
+
+**Reasoning behind this split:** when developing the DH08 GUI, the initial implementation provided such one command
+for sending messages to the pod in the Tauri backend, which acts as simply an intermediary between the pod and the GUI.
+Other commands meant to change the state of the backend or trigger different functionality were implemented as separate
+Tauri commands.
+
+## Usage and place in the architecture
+
+The original GUI used Tauri, and the necessity for such an interface was not apparent at first.
+To support Serpenta for different stacks,
+the actual implementation of communication to a backend was decoupled from the Serpenta UI kit logic.
+
+### Implementation in the Tauri Starter Kit
+
+When creating the provided [Tauri Starter Kit](Tauri-Starter-Kit.md), the implementation of the command invoker is
+done by using the Tauri api for commands as done in the real DH08 GUI.
+The option to swap it out for a different implementation still exists if desired.
+
+## Reference
+
+Below are the TSDoc comments of each method or field part of this interface.
+
+### Methods
+
+#### `invokeCommand(...):Promise;`
+
+Invoke a command given its name/identifier and an object of arguments.
+
+**Params:**
+- commandName: the name/identifier of the command to be executed.
+- args: the arguments with which the command will be called.
+They are of the type `Record` because they will take an
+object representing the arguments we call the command with.
+
+**Type params:**
+
+- T: the return type of the invoked command.
+
+**Returns:**
+a Promise of type T—the return type of the command itself.
+
+**Example:**
+
+If we were to call a function (in an arbitrary language) that takes
+arguments (width: integer, height: integer, label: string) which returns an integer,
+we will call this `invokeCommand` method as:
+
+```Typescript
+const res:number = await invokeCommand("function_name", {
+ width: 4,
+ height: 5,
+ label: "Rectangle"
+});
+```
diff --git a/Writerside/topics/Configuration-Interface.md b/Writerside/topics/Configuration-Interface.md
index 25b9e35..38a8e24 100644
--- a/Writerside/topics/Configuration-Interface.md
+++ b/Writerside/topics/Configuration-Interface.md
@@ -1,42 +1,66 @@
# Configuration Interface
-Built to allow for dependency injection, the `` component takes a configuration prop which is set as
-context for all its children (recursively).
+Built to allow for dependency injection and modularity, the `` component takes a configuration prop
+which is set as context for all its children (recursively).
+Context in Svelte can be set by a parent component, and all the children nested within have access to it.
## Interface
-The config itself has a describing interface:
+The config itself has the following interface:
### Properties {collapsible="true"}
Each of these properties can be accessed by calling the `getSerpentaContext()` command within a component nested
inside the `` one.
-> If the component is not living inside the shell, get context will return an empty object.
-> What's more, the context is set with the key "serpenta-context" which shall not appear for any other context within
+> If the component is not living inside the shell, get context will return an empty object.
+> What's more, the context is set with the key "serpenta-context" which shall not appear for any other context within
> the shell or its children.
-| name | type | comments |
-|--------------------------|-------------------------------------|-------------------------------------------------------------------------------------|
-| `appWindow` | `any` | Interface for controlling the native app window. Used to make the custom title bar. |
-| `pod_name` | `string` | The name of the hyperloop pod. Used in the bottom bar. |
-| `grand_data_distributor` | `WindowEngine` | |
-| `window_engine` | `CommandInvocation` | |
-| `grand_charter` | `Writable