# Modular Application Features

**URL:** <https://forum.inductiveautomation.com/t/modular-application-features/72095>\
**Category:** General Discussion\
**Tags:** vision, ignition81\
**Created:** [April 5, 2023, 2:54pm UTC](https://forum.inductiveautomation.com/t/modular-application-features/72095 "2023-04-05T14:54:58Z")\
**Posts on this page:** 2\
**Page:** 1

<div class="post-metadata">

**Author:** ![mathieurleblanc33](https://avatars.discourse-cdn.com/v4/letter/m/e19adc/32.png) [@mathieurleblanc33](https://forum.inductiveautomation.com/u/mathieurleblanc33)\
**Post date:** [April 5, 2023, 2:54pm UTC](https://forum.inductiveautomation.com/t/modular-application-features/72095/1 "2023-04-05T14:54:58Z")

</div>

Hi Folks,  
I am wanting to create a "modular" application.

This application will have many features. A feature would "unlock": script, new navigation options, new windows, new functions, possibly new UDTs, new roles, etc..  
Now I am not familiar with creating custom modules for ignition but have seen the SDK.  
I am not sure how to approach this concept.

I was thinking as a preliminary approach is to have a master configuration screen which you "checkmark"/"turn on a feature" which would enable script, add roles, enable navigation buttons associated with this role and possibly add more screen features.

Secondly, I was thinking of documenting all the components that make up this feature and add it to a module (not sure if i can include, roles, scripts, windows, navigation, etc.).

The full vision is that customers would be purchasing modules based on their required software functionality needs.

Is my approach wrong, is there a better approach? Looking for feedback to see if anyone else has done something similar.

---

<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:** [April 5, 2023, 3:01pm UTC](https://forum.inductiveautomation.com/t/modular-application-features/72095/2 "2023-04-05T15:01:52Z")

</div>

> [@mathieurleblanc33](#):
>
> not sure if i can include, roles, scripts, windows, navigation, etc

Not really, no. The SDK is more for **infrastructure** , like new components for the designer, new expression and script functions, specialty tag providers, and OPC drivers. You could create a module that selective registered such infrastructure based on codes placed in a license. Some of the items you wish to manipulate are reachable in Ignition's internal configuration DB, but the formats are typically opaque outside of IA.
