> For the complete documentation index, see [llms.txt](https://documentation.hak5.org/wifi-pineapple-6th-gen-nano-tetra/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://documentation.hak5.org/wifi-pineapple-6th-gen-nano-tetra/development/wifi-pineapple-nano-tetra-module-api-module.php-api.md).

# WiFi Pineapple NANO/TETRA Module API - module.php API

Every module must extend the `Module` class that resides in `Module.php`. Extending this class gives the module access to the following API functions. For more information, see [Creating Modules](https://wiki.wifipineapple.com/creating_modules.md).

| Function            | Arguments                                               | Description                                                                 | Usage                                           |
| ------------------- | ------------------------------------------------------- | --------------------------------------------------------------------------- | ----------------------------------------------- |
| execBackground()    | `command`                                               | Will execute `command` in the background.                                   | \`$this->execBackground("ifconfig wlan1 down"); |
| installDependency() | `dependencyName`                                        | Will use opkg to install `dependencyName`.                                  | `$this->installDependecy('nmap');`              |
| checkDependency()   | `dependencyName`                                        | Will use opkg to check is `dependencyName` is installed.                    | `$this->checkDependency('nmap');`               |
| checkRunning()      | `processName`                                           | Will check to see if `processName` is currently running on the system.      | `$this->checkRunning('nmap');`                  |
| uciGet()            | `uciString`                                             | Will use UCI to get value of supplied `uciString`                           | `$this->uciGet("network.wan");`                 |
| uciSet()            | <p><code>settingString</code><br><code>value</code></p> | Will use UCI to set the supplied `value` of supplied `settingString`.       | `$this->uciSet("network.wan.ifname", "wan2");`  |
| uciAddList()        | <p><code>settingString</code><br><code>value</code></p> | Will use UCI to create a new list with supplied `settingString`and `value`. | `$this->uciAddList("network", "wan3");`         |
