# How to develop a new module in Ignition

**URL:** <https://forum.inductiveautomation.com/t/how-to-develop-a-new-module-in-ignition/42737>\
**Category:** Module Development\
**Created:** [January 29, 2021, 11:25am UTC](https://forum.inductiveautomation.com/t/how-to-develop-a-new-module-in-ignition/42737 "2021-01-29T11:25:19Z")\
**Posts on this page:** 8\
**Page:** 1

<div class="post-metadata">

**Author:** ![koziorowski](https://avatars.discourse-cdn.com/v4/letter/k/9dc877/32.png) [@koziorowski](https://forum.inductiveautomation.com/u/koziorowski)\
**Post date:** [January 29, 2021, 11:25am UTC](https://forum.inductiveautomation.com/t/how-to-develop-a-new-module-in-ignition/42737/1 "2021-01-29T11:25:19Z")

</div>

Hi  
I did university course for the version 8.0 of Ignition.  
Could anybody please advise me what is the recommended route to follow if I need to develop a new module in Ignition? What skillset does it require - Java etc? What additional software do i need? Any recommended courses or documents to read?

Regards

---

<div class="post-metadata">

**Author:** ![mlunapinel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/mlunapinel/32/19719_2.png) [@mlunapinel](https://forum.inductiveautomation.com/u/mlunapinel)\
**Post date:** [January 29, 2021, 12:49pm UTC](https://forum.inductiveautomation.com/t/how-to-develop-a-new-module-in-ignition/42737/2 "2021-01-29T12:49:54Z")

</div>

Hello!

I started developing modules this past October so I am fairly new. Ignition is an amazing tool for SCADA, and being able to develop our own modules is great.  
To develop modules you will need Java (or any JVM language I think) and ignition knowledge. Also a little bit of Maven. As of software, you’ll just need Ignition and IDE (I personally recommend IntelIJ, there is a free version).

If you are new developing modules, these are the steps I took:

1- Reading this guide and follow the steps to set up your IDE: [Introduction - Ignition SDK Programmer’s Guide - Ignition Documentation (inductiveautomation.com)](https://docs.inductiveautomation.com/display/SE/Introduction)  
In the Introduction section you can find the different Javadocs (7.9,8.0,8.1), the newer, the easier to develop with. The documentation of the Ignition libraries could see some improvements, so I recommend looking or participanting in this forum if you get stuck. These libraries change from the different Ignition’s versions so be careful with that.

2-Study how these modules work: [Ignition Module Development Community (github.com)](https://github.com/IgnitionModuleDevelopmentCommunity)  
[inductiveautomation/ignition-sdk-examples at ignition-8.0 (github.com)](https://github.com/inductiveautomation/ignition-sdk-examples/tree/ignition-8.0)  
You can clone the project, install them and maybe modify them.

3.-Start developing your own modules

I’d like to hear about what are you planning to develop.

Good luck!

---

<div class="post-metadata">

**Author:** ![brandon1](https://avatars.discourse-cdn.com/v4/letter/b/ea666f/32.png) [@brandon1](https://forum.inductiveautomation.com/u/brandon1)\
**Post date:** [January 29, 2021, 1:20pm UTC](https://forum.inductiveautomation.com/t/how-to-develop-a-new-module-in-ignition/42737/3 "2021-01-29T13:20:35Z")

</div>

It’s also important to point out that developing a Perspective module is completely different than a vision based module. You have to know a lot more about web development for Perspective.

---

<div class="post-metadata">

**Author:** ![paul-griffith](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/paul-griffith/32/37249_2.png) [@paul-griffith](https://forum.inductiveautomation.com/u/paul-griffith)\
**Post date:** [January 29, 2021, 5:06pm UTC](https://forum.inductiveautomation.com/t/how-to-develop-a-new-module-in-ignition/42737/4 "2021-01-29T17:06:16Z")

</div>

> [@mlunapinel](#):
>
> To develop modules you will need Java (or any JVM language I think) and ignition knowledge. Also a little bit of Maven. As of software, you’ll just need Ignition and IDE (I personally recommend IntelIJ, there is a free version).

This is excellent advice, though I would say that from 8.0 upward we're generally recommending Gradle over Maven; it's by no means a requirement (@pturmel uses Ant for his modules, I believe) but our new module build tools default to Gradle.

---

<div class="post-metadata">

**Author:** ![Kevin.Herron](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/kevin.herron/32/7259_2.png) [@Kevin.Herron](https://forum.inductiveautomation.com/u/Kevin.Herron)\
**Post date:** [January 29, 2021, 5:08pm UTC](https://forum.inductiveautomation.com/t/how-to-develop-a-new-module-in-ignition/42737/5 "2021-01-29T17:08:34Z")

</div>

> [@paul-griffith](#):
>
> though I would say that from 8.0 upward we’re generally recommending Gradle over Maven; it’s by no means a requirement (@pturmel uses Ant for his modules, I believe) but our new module build tools default to Gradle.

Contrary opinion: use Maven unless you're building a Perspective module. Much simpler and we have a very simple plugin for building a module for Maven.

---

<div class="post-metadata">

**Author:** ![pturmel](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pturmel/32/3295_2.png) [@pturmel](https://forum.inductiveautomation.com/u/pturmel)\
**Post date:** [January 29, 2021, 5:11pm UTC](https://forum.inductiveautomation.com/t/how-to-develop-a-new-module-in-ignition/42737/6 "2021-01-29T17:11:12Z")

</div>

> [@paul-griffith](#):
>
> [pturmel](https://forum.inductiveautomation.com/u/pturmel) uses Ant for his modules, I believe

I do. Not a fan of Maven. Gradle is a happy middle ground, and I will be reworking all my modules for Gradle when v7.9 is EOL.

> [@Kevin.Herron](#):
>
> Contrary opinion: use Maven

Hah! No!

---

<div class="post-metadata">

**Author:** ![koziorowski](https://avatars.discourse-cdn.com/v4/letter/k/9dc877/32.png) [@koziorowski](https://forum.inductiveautomation.com/u/koziorowski)\
**Post date:** [January 29, 2021, 5:18pm UTC](https://forum.inductiveautomation.com/t/how-to-develop-a-new-module-in-ignition/42737/7 "2021-01-29T17:18:33Z")

</div>

what an extremely valuable answer!  
thank you for your time and help!  
best regards

---

<div class="post-metadata">

**Author:** ![PRAMANJ](https://sea1.discourse-cdn.com/inductiveautomation/user_avatar/forum.inductiveautomation.com/pramanj/32/66935_2.png) [@PRAMANJ](https://forum.inductiveautomation.com/u/PRAMANJ)\
**Post date:** [January 30, 2021, 11:41am UTC](https://forum.inductiveautomation.com/t/how-to-develop-a-new-module-in-ignition/42737/8 "2021-01-30T11:41:41Z")

</div>

All the best!
