# Expandability

There are two types of extensions available for GEDKeeper: Lua scripts and plugins written in C# or VB.NET.

The following are the main reasons to extend an application with plugin units:

- You want to add new functionality to the application without having to rebuild the source code and deploy a new release.
- You want to add new functionality to the application, but do not have the necessary source code.

To create plugins, you must use the GKCore common library of the application's core.

Plugins can include both fully independent extensions, auxiliary widgets for data management, and reports.