— redirect_from: “/Create-a-Module” —
<!DOCTYPE markdown> # Create a Module
## How to create a module
Before start we suggest you to read [Documentation about modular structure](The-Modular-Structure) to understand the way AzerothCore works.
### Resources
- Module template: [https://github.com/azerothcore/skeleton-module](https://github.com/azerothcore/skeleton-module) - Script template: https://github.com/azerothcore/azerothcore-boilerplates - All the hooks in the core are listed in [ScriptMgr.h](https://github.com/azerothcore/azerothcore-wotlk/blob/master/src/server/game/Scripting/ScriptMgr.h). If you need custom hooks, they can be added to the core by [sending a PR](https://www.azerothcore.org/wiki/How-to-create-a-PR).
- If you need to create a new hook for your module, please follow this guide: [How to create a new hook](hooks-script.md)
### The Basis
1. Create a folder inside modules/ directory
2. Now you can develop add anything to the main project, such as some scripts or even an entire library
Note: we suggest to use the [directory structure](Directory-Structure) standards of AzerothCore to better organize your modules and be familiar with main project.
### Add the first script
1. Before continue, we suggest you to follow our guide on how to create a script for AzerothCore
2. After you’ve created your script you’ve to create a .cpp file to handle the script loading.
For example ( Assuming you’ve created an src folder ):