# Module Development

**URL:** https://forum.inductiveautomation.com/c/module-development/7.md?page=9

[Latest](https://forum.inductiveautomation.com/latest.md) · [Categories](https://forum.inductiveautomation.com/categories.md) · [Tags](https://forum.inductiveautomation.com/tags.md)

**Page:** 10

---

## [Navigation in React component](https://forum.inductiveautomation.com/t/navigation-in-react-component/106834)

<div class="topic-metadata">

**Author:** [@torstein](https://forum.inductiveautomation.com/u/torstein)\
**Replies:** 3\
**Last updated:** [May 29, 2025, 11:34pm UTC](https://forum.inductiveautomation.com/t/navigation-in-react-component/106834 "2025-05-29T23:34:50Z")

</div>

I'm making a third party module which uses React components to make a new Navigation menu. Currently I'm using this code to change to a new page: onLinkClick(pageName: string) { //@ts-ignore this.props.store.cli…

---

## [Perspective Component License Handling](https://forum.inductiveautomation.com/t/perspective-component-license-handling/106776)

<div class="topic-metadata">

**Author:** [@cody.tamaki](https://forum.inductiveautomation.com/u/cody.tamaki)\
**Replies:** 2\
**Last updated:** [May 28, 2025, 4:25pm UTC](https://forum.inductiveautomation.com/t/perspective-component-license-handling/106776 "2025-05-28T16:25:18Z")

</div>

Would like to add some licensing checks to a perspective component module that I've built. Do I have to add this through a delegate passing info down from the gateway or is there a built in way that I can fetch the licen…

---

## [Get the current project name](https://forum.inductiveautomation.com/t/get-the-current-project-name/106727)

<div class="topic-metadata">

**Author:** [@Mehrdad\_Telli](https://forum.inductiveautomation.com/u/Mehrdad_Telli)\
**Replies:** 5\
**Last updated:** [May 28, 2025, 5:15am UTC](https://forum.inductiveautomation.com/t/get-the-current-project-name/106727 "2025-05-28T05:15:54Z")

</div>

How do I get the current project name from GatewayHook?

---

## [How to automatically obtain and forward historical data from tags with custom storage module history enabled](https://forum.inductiveautomation.com/t/how-to-automatically-obtain-and-forward-historical-data-from-tags-with-custom-storage-module-history-enabled/106742)

<div class="topic-metadata">

**Author:** [@linzhoujiehu123](https://forum.inductiveautomation.com/u/linzhoujiehu123)\
**Replies:** 0\
**Last updated:** [May 27, 2025, 5:33pm UTC](https://forum.inductiveautomation.com/t/how-to-automatically-obtain-and-forward-historical-data-from-tags-with-custom-storage-module-history-enabled/106742 "2025-05-27T17:33:27Z")

</div>

I am new to Ignition SDK custom module development. I need to write a module to store and forward historical data in a specified database. How can I automatically obtain the historical data of a tag for forwarding storag…

---

## [Export property in module.xml file](https://forum.inductiveautomation.com/t/export-property-in-module-xml-file/106299)

<div class="topic-metadata">

**Author:** [@sebastian.fekete](https://forum.inductiveautomation.com/u/sebastian.fekete)\
**Replies:** 13\
**Last updated:** [May 26, 2025, 2:16pm UTC](https://forum.inductiveautomation.com/t/export-property-in-module-xml-file/106299 "2025-05-26T14:16:12Z")

</div>

Hi everyone, I'm currently developing a custom Ignition module using the scripting-function Maven project as a base. In my module.xml file, I'm including third-party libraries like so: \<jar scope="DG"\>msal4j-1.20.1.jar\<…

---

## [Designer visible window bounds](https://forum.inductiveautomation.com/t/designer-visible-window-bounds/106640)

<div class="topic-metadata">

**Author:** [@Mathias\_Melling](https://forum.inductiveautomation.com/u/Mathias_Melling)\
**Replies:** 11\
**Last updated:** [May 26, 2025, 1:30pm UTC](https://forum.inductiveautomation.com/t/designer-visible-window-bounds/106640 "2025-05-26T13:30:03Z")

</div>

Is there anything built in that can give me the bounds of the currently visible window? For example, the visible bounds for the below screenshot should be: \[x=20, y=20, width=312, height=140\]

---

## [Issue with the perspective component .modl file](https://forum.inductiveautomation.com/t/issue-with-the-perspective-component-modl-file/106690)

<div class="topic-metadata">

**Author:** [@dalibor.jaksic](https://forum.inductiveautomation.com/u/dalibor.jaksic)\
**Replies:** 0\
**Last updated:** [May 26, 2025, 1:08pm UTC](https://forum.inductiveautomation.com/t/issue-with-the-perspective-component-modl-file/106690 "2025-05-26T13:08:24Z")

</div>

Ignition is reporting warnings that its "Unable to find registered components" in status log after start/restart with the installed .modl file. Check the issue on Github ignition-sdk-examples

---

## [Create a tag groups with the SDK](https://forum.inductiveautomation.com/t/create-a-tag-groups-with-the-sdk/33677)

<div class="topic-metadata">

**Author:** [@mazeyrat](https://forum.inductiveautomation.com/u/mazeyrat)\
**Replies:** 0\
**Last updated:** [April 3, 2020, 9:26pm UTC](https://forum.inductiveautomation.com/t/create-a-tag-groups-with-the-sdk/33677 "2020-04-03T21:26:41Z")

</div>

I try to create a tag groups with the SDK or edit an existing tag groups. Package \[com.inductiveautomation.ignition.common.tags.config\] The constructor of the class TagGroupConfiguration: TagGroupConfiguration​(Propert…

---

## [OPC-UA javadoc and general functionality](https://forum.inductiveautomation.com/t/opc-ua-javadoc-and-general-functionality/81913)

<div class="topic-metadata">

**Author:** [@James\_Robertson](https://forum.inductiveautomation.com/u/James_Robertson)\
**Replies:** 26\
**Last updated:** [May 22, 2025, 8:15pm UTC](https://forum.inductiveautomation.com/t/opc-ua-javadoc-and-general-functionality/81913 "2025-05-22T20:15:18Z")

</div>

I am trying to create an OPC-UA device driver in 8.1 and am using the OPC-UA example from GitHub as the starting point. I understand the general gist of the example, but am trying to figure out how to implement a device…

---

## [Module Performance](https://forum.inductiveautomation.com/t/module-performance/106577)

<div class="topic-metadata">

**Author:** [@elijah.roberts](https://forum.inductiveautomation.com/u/elijah.roberts)\
**Replies:** 1\
**Last updated:** [May 22, 2025, 6:19pm UTC](https://forum.inductiveautomation.com/t/module-performance/106577 "2025-05-22T18:19:56Z")

</div>

I have built a couple scripting modules for Ignition, I am still new to Java and the module dev side so forgive me if this question is obvious or just dumb. I was toying around with the idea of building an API to replac…

---

## [Prevent Designer Re-Load on Module Update](https://forum.inductiveautomation.com/t/prevent-designer-re-load-on-module-update/106514)

<div class="topic-metadata">

**Author:** [@cody.tamaki](https://forum.inductiveautomation.com/u/cody.tamaki)\
**Replies:** 4\
**Last updated:** [May 21, 2025, 5:59pm UTC](https://forum.inductiveautomation.com/t/prevent-designer-re-load-on-module-update/106514 "2025-05-21T17:59:50Z")

</div>

Is there any way to prevent a designer for forcibly restarting if we push a module updates? I'd rather assume the risk of having an out of date designer if I'm only working on updates to the gateway scope...

---

## [Returning JSON With Date](https://forum.inductiveautomation.com/t/returning-json-with-date/106486)

<div class="topic-metadata">

**Author:** [@cody.tamaki](https://forum.inductiveautomation.com/u/cody.tamaki)\
**Replies:** 9\
**Last updated:** [May 21, 2025, 3:54pm UTC](https://forum.inductiveautomation.com/t/returning-json-with-date/106486 "2025-05-21T15:54:18Z")

</div>

I've been scripting a few RPC calls in a module of ours, and I would ultimately like to return a Document/JSON object that will contain a few dates inside of it. I thought using java.util.Date would be best to work with …

---

## [\[IGN-6751\]Unable to import scripting function on module with non-system namespace](https://forum.inductiveautomation.com/t/ign-6751-unable-to-import-scripting-function-on-module-with-non-system-namespace/65372)

<div class="topic-metadata">

**Author:** [@Matthew\_Plumb](https://forum.inductiveautomation.com/u/Matthew_Plumb)\
**Replies:** 7\
**Last updated:** [May 20, 2025, 3:17pm UTC](https://forum.inductiveautomation.com/t/ign-6751-unable-to-import-scripting-function-on-module-with-non-system-namespace/65372 "2025-05-20T15:17:36Z")

</div>

Hello, I am building a module and attempting to expose a scripting function to the ignition python environment. This works fine when I embed within system namespace but as soon as I move to my own namespace I understan…

---

## [Module Development Tips Thread](https://forum.inductiveautomation.com/t/module-development-tips-thread/106379)

<div class="topic-metadata">

**Author:** [@David\_Stone](https://forum.inductiveautomation.com/u/David_Stone)\
**Replies:** 7\
**Last updated:** [May 20, 2025, 3:31am UTC](https://forum.inductiveautomation.com/t/module-development-tips-thread/106379 "2025-05-20T03:31:20Z")

</div>

Module development is a step above developing inside the Ignition Designer. In this thread we can add any tips and tricks we have learned along the way to make it a more approachable learning curve. I have made a bunch…

---

## [Requirement of key size for code signing certificate to sign modules](https://forum.inductiveautomation.com/t/requirement-of-key-size-for-code-signing-certificate-to-sign-modules/106321)

<div class="topic-metadata">

**Author:** [@manisha.bansal](https://forum.inductiveautomation.com/u/manisha.bansal)\
**Replies:** 2\
**Last updated:** [May 16, 2025, 2:29pm UTC](https://forum.inductiveautomation.com/t/requirement-of-key-size-for-code-signing-certificate-to-sign-modules/106321 "2025-05-16T14:29:12Z")

</div>

Can we get to know What is the optimal key size for a code signing certificate (leaf)? What is the requirement for key size for ROOT of this signing cert? What are the requirements around using a self-signed cert?

---

## [Custom Metrics in Module](https://forum.inductiveautomation.com/t/custom-metrics-in-module/106218)

<div class="topic-metadata">

**Author:** [@Harry\_Sadoyan](https://forum.inductiveautomation.com/u/Harry_Sadoyan)\
**Replies:** 3\
**Last updated:** [May 15, 2025, 8:06pm UTC](https://forum.inductiveautomation.com/t/custom-metrics-in-module/106218 "2025-05-15T20:06:33Z")

</div>

My company uses Grafana Loki for our logs and metrics. I want to use something like Loki Logback Appender to also send my custom module's logs to loki. Can I do something similar with metrics? Ideally I'd like to: Reg…

---

## [Calling project specific code from an Ignition module](https://forum.inductiveautomation.com/t/calling-project-specific-code-from-an-ignition-module/106143)

<div class="topic-metadata">

**Author:** [@samuel.gupta](https://forum.inductiveautomation.com/u/samuel.gupta)\
**Replies:** 3\
**Last updated:** [May 12, 2025, 2:21pm UTC](https://forum.inductiveautomation.com/t/calling-project-specific-code-from-an-ignition-module/106143 "2025-05-12T14:21:13Z")

</div>

Hello! I am trying to make an Ignition module for MQTT where the projects are in charge of subscribing to the topics they need and set a callback on message reception. Im looking for a way to call those callbacks from t…

---

## [Gradle Shading Question](https://forum.inductiveautomation.com/t/gradle-shading-question/106010)

<div class="topic-metadata">

**Author:** [@Eden.Mar](https://forum.inductiveautomation.com/u/Eden.Mar)\
**Replies:** 5\
**Last updated:** [May 8, 2025, 6:07pm UTC](https://forum.inductiveautomation.com/t/gradle-shading-question/106010 "2025-05-08T18:07:33Z")

</div>

Hi all, Does anyone have any experience using the GradleUp Shadow plugin in combination with the IA Gradle plugin? Recently, I discovered that one of our modules is running into the following error on 8.1.47: BasicExec…

---

## [Scripting-Function Module Jar-Cache changes .jar filenames](https://forum.inductiveautomation.com/t/scripting-function-module-jar-cache-changes-jar-filenames/106034)

<div class="topic-metadata">

**Author:** [@sebastian.fekete](https://forum.inductiveautomation.com/u/sebastian.fekete)\
**Replies:** 0\
**Last updated:** [May 8, 2025, 10:44am UTC](https://forum.inductiveautomation.com/t/scripting-function-module-jar-cache-changes-jar-filenames/106034 "2025-05-08T10:44:31Z")

</div>

Hi everyone, i am currently developing a module based on the scripting-function project from the sdk-examples. I include the sapjco-3.1.11.jar in the modl build and create the following method to load jco classes: @Sc…

---

## [Ignition database use from modules](https://forum.inductiveautomation.com/t/ignition-database-use-from-modules/105806)

<div class="topic-metadata">

**Author:** [@David\_Stone](https://forum.inductiveautomation.com/u/David_Stone)\
**Replies:** 2\
**Last updated:** [May 2, 2025, 2:37pm UTC](https://forum.inductiveautomation.com/t/ignition-database-use-from-modules/105806 "2025-05-02T14:37:18Z")

</div>

Is there any examples of modules around that use their own table in an existing Ignition database? Not the SQLite config database, but one of the user defined SQL connections?

---

## [Custom Tag History Provider](https://forum.inductiveautomation.com/t/custom-tag-history-provider/105797)

<div class="topic-metadata">

**Author:** [@andrew.jank](https://forum.inductiveautomation.com/u/andrew.jank)\
**Replies:** 0\
**Last updated:** [May 1, 2025, 7:59pm UTC](https://forum.inductiveautomation.com/t/custom-tag-history-provider/105797 "2025-05-01T19:59:13Z")

</div>

Hey Everyone, I have started developing an Ignition module to read/write values using our in-house historian. I was able to get most of it running using the following example: GitHub - IgnitionModuleDevelopmentCommuni…

---

## [Create UDT Instance with specified UDT Definition in ManagedTagProvider](https://forum.inductiveautomation.com/t/create-udt-instance-with-specified-udt-definition-in-managedtagprovider/105733)

<div class="topic-metadata">

**Author:** [@rhys.nickerson](https://forum.inductiveautomation.com/u/rhys.nickerson)\
**Replies:** 4\
**Last updated:** [April 30, 2025, 4:01pm UTC](https://forum.inductiveautomation.com/t/create-udt-instance-with-specified-udt-definition-in-managedtagprovider/105733 "2025-04-30T16:01:05Z")

</div>

Hello, I am struggling to determine how to create a UDT Instance with a specified UDT parent data type in version 8.1.48 of the java SDK. I am able to create a UDT definition for a ManagedTagProvider as follows: // cre…

---

## [Create UDT ManagedTagProvider](https://forum.inductiveautomation.com/t/create-udt-managedtagprovider/79854)

<div class="topic-metadata">

**Author:** [@kaushik.shah](https://forum.inductiveautomation.com/u/kaushik.shah)\
**Replies:** 2\
**Last updated:** [April 30, 2025, 2:26pm UTC](https://forum.inductiveautomation.com/t/create-udt-managedtagprovider/79854 "2025-04-30T14:26:21Z")

</div>

Hello There, I am looking to create a UDT within ManagedTagProvider. I have created managed tag provider through the module on ignition\_sdk\_examples. Could not find much documentation on creating UDT. This is what I put…

---

## [Internal DB Redundancy](https://forum.inductiveautomation.com/t/internal-db-redundancy/105388)

<div class="topic-metadata">

**Author:** [@e.sagnelonge](https://forum.inductiveautomation.com/u/e.sagnelonge)\
**Replies:** 5\
**Last updated:** [April 23, 2025, 3:08pm UTC](https://forum.inductiveautomation.com/t/internal-db-redundancy/105388 "2025-04-23T15:08:19Z")

</div>

Hello, I'm currently working with Ignition version 8.1.32. One of my modules stores its configuration in the Internal DB. According to the documentation, persistent records are automatically synchronized via redundanc…

---

## [Including Third-Party Dependencies in Ignition Module](https://forum.inductiveautomation.com/t/including-third-party-dependencies-in-ignition-module/105224)

<div class="topic-metadata">

**Author:** [@sebastian.fekete](https://forum.inductiveautomation.com/u/sebastian.fekete)\
**Replies:** 10\
**Last updated:** [April 22, 2025, 8:20pm UTC](https://forum.inductiveautomation.com/t/including-third-party-dependencies-in-ignition-module/105224 "2025-04-22T20:20:29Z")

</div>

Hi everyone, I'm trying to include third-party dependencies in my Ignition module. I attempted this using the perspective-component from the Ignition SDK GitHub by adding the dependencies I need to the build.gradle.kts …

---

## [Ignition v8.1.47 : custom module is giving error related to "bouncycastle"](https://forum.inductiveautomation.com/t/ignition-v8-1-47-custom-module-is-giving-error-related-to-bouncycastle/105359)

<div class="topic-metadata">

**Author:** [@Shyam\_Sundar\_Ashok](https://forum.inductiveautomation.com/u/Shyam_Sundar_Ashok)\
**Replies:** 12\
**Last updated:** [April 22, 2025, 4:23pm UTC](https://forum.inductiveautomation.com/t/ignition-v8-1-47-custom-module-is-giving-error-related-to-bouncycastle/105359 "2025-04-22T16:23:11Z")

</div>

Hi , I am having issue with my custom ignition module Build a Module | Ignition SDK Programmer's Guide I built a custom ignition module in Maven with and as 8.1.0-SNAPSHOT . My module works fine with Ignition v8.1.…

---

## [Ignition module tools and corporate proxy](https://forum.inductiveautomation.com/t/ignition-module-tools-and-corporate-proxy/105391)

<div class="topic-metadata">

**Author:** [@auguste.lacheteau](https://forum.inductiveautomation.com/u/auguste.lacheteau)\
**Replies:** 2\
**Last updated:** [April 22, 2025, 3:46pm UTC](https://forum.inductiveautomation.com/t/ignition-module-tools-and-corporate-proxy/105391 "2025-04-22T15:46:23Z")

</div>

Hey everyone, I'm a junior dev trying to build a custom module for my company. I'm following the SDK tutorial, but when I run ./gradlew.bat build, I'm getting this error: Plugin \[id: 'org.jetbrains.kotlin.jvm', version…

---

## [Jython import external file](https://forum.inductiveautomation.com/t/jython-import-external-file/105371)

<div class="topic-metadata">

**Author:** [@fydlee](https://forum.inductiveautomation.com/u/fydlee)\
**Replies:** 3\
**Last updated:** [April 22, 2025, 11:56am UTC](https://forum.inductiveautomation.com/t/jython-import-external-file/105371 "2025-04-22T11:56:17Z")

</div>

I am new to this platform and have gotten one of the example modules to build and run. I would like to write a .py Jython file and be able to call functions from it within my module. I can run Jython from within Ignition…

---

## [Different Browser Resources in Designer vs Perspective Client](https://forum.inductiveautomation.com/t/different-browser-resources-in-designer-vs-perspective-client/104035)

<div class="topic-metadata">

**Author:** [@kgamble](https://forum.inductiveautomation.com/u/kgamble)\
**Replies:** 2\
**Last updated:** [April 19, 2025, 10:44am UTC](https://forum.inductiveautomation.com/t/different-browser-resources-in-designer-vs-perspective-client/104035 "2025-04-19T10:44:20Z")

</div>

I am trying to do some stuff to make the tailwind CSS libraries more accessible in Ignition, however to do so I need to be able to load the full CSS library into the designer scope, but a lighter-weight compiled version …

---

## [Ignition sdk prespective component development](https://forum.inductiveautomation.com/t/ignition-sdk-prespective-component-development/105167)

<div class="topic-metadata">

**Author:** [@avinash.jha](https://forum.inductiveautomation.com/u/avinash.jha)\
**Replies:** 8\
**Last updated:** [April 17, 2025, 12:40pm UTC](https://forum.inductiveautomation.com/t/ignition-sdk-prespective-component-development/105167 "2025-04-17T12:40:32Z")

</div>

I want to create a button folder in the prespective component-\>rad component example and move two action buttons that i have created, the button folder shall open and close and shows inside buttons

[Previous page](https://forum.inductiveautomation.com/c/module-development/7.md?page=8)

[Next page](https://forum.inductiveautomation.com/c/module-development/7.md?page=10)
