> For the complete documentation index, see [llms.txt](https://m3ii0.gitbook.io/amazingtitles_core_1/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://m3ii0.gitbook.io/amazingtitles_core_1/plugins-api/creating-amazingextension.md).

# Creating AmazingExtension

## Implementing & using interface

```java
public class APIExample implements AmazingExtension {
	
	
	@Override
	public String extension_name() {
		return "My_Extension";
	}
	
	@Override
	public void load() {
		
		/*
		*
		* Things that should be performed while loading
		*
		* */
		
		// Adding listener
		addListener(new Listener());
		
		// Getting plugin instance
		Plugin amazingTitles = getPluginInstance();
		
		// Getting extension file
		File asFile = getAsFile();
		
		// Getting loaded listeners
		List<Listener> listeners = getListeners();
		
		
	}
	
	@Override
	public void unload() {
		
		/*
		*
		* Things that should be performed while unloading
		* (Listeners,Commands & Animations will be unloaded automatically)
		*
		* */
		
	}
	
}
```

## extension.yml

Your class must implements AmazingExtension. (Wrap this file into your .jar file)

```yaml
Class: sk.m3ii0.amazingtitles.extension.summer.Main
```
