# Introduction

{% hint style="danger" %}
**Please note:** This page is under construction and has not been finished yet.
{% endhint %}

Plugins extended the functionality of e107 and allow for endless possibilities.&#x20;

CORE/THIRD PARTY - LINK TO USER GUIDE

## ARCHITECTURE&#x20;

The plugin architecture is developed to be as simple as possible. Often you can copy a file from an existing plugin and simply modify a few parameters in order to get similar functionality in your own plugin

## Folder structure

Example: blank plugin

* images
  * sizes?
* languages
  * English
    * ...
* templates
* addon files

Required files

* plugin.xml
*

Optional files

* admin\_config.php
* \*\_setup.php
* \*\_sql.php
* e\_\*.php addons
* \*\_shortcodes.php
*

## [ADMIN-UI ](/plugin-development/admin-ui.md)

## [addons](/plugin-development/extending-core-functionality-addons.md)


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://devguide.e107.org/plugin-development/introduction.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
