mnowak
Topic Author
Posts: 4
Joined: 09 Jul 2025, 21:52

Multiple Studio "Projects" Interacting

08 Jan 2026, 01:04

Happy New Year Noesis! :)


I have a somewhat unique situation trying to support potentially multiple Noesis Studio projects in the same application. For context, we have a main application and our users can create plugins to add to the original application. The issue we're facing is that plugin developers will need to develop in separate repos and their content is conditionally loaded.

I know this isn't exactly the intended usecase for Noesis Studio, but I was hoping for any guidance on how to best support this. Plugin developers will be creating potentially pretty sophisticated addons to the base application and will need access to the base app theming, data structures, maybe even components.

I'm wondering if we can do something somewhat clever merging global resources at the very least. I'm not quite sure how we'll support importing data structures without some level of studio changes.
 
User avatar
dstewart
Site Admin
Posts: 136
Joined: 22 Jan 2024, 11:41

Re: Multiple Studio "Projects" Interacting

08 Jan 2026, 13:31

Hi Mike, Dorian here! A very happy new year to you as well!

This is a really great question --- there are really going to be 3 different parts at play here, so I'll go over each one by one:

1) Let's first talk about sharing XAML content between different Projects:

The scenario you're referring to, where there is say a 'Main', 'Master', or 'Core' Project that contains a bunch of goodies that can be leveraged in Auxiliary Projects is something we currently support.

This feature allows you to access, and deploy Pages, Components, and Resources from a completely different Project in a different location.

To make this happen, in the Assets Panel of any Auxiliary Project, under the (+) icon in the upper-right, you can find an "Add Project Reference" action that will then allow you to point to another Project:

1_AddProjectReference.jpg

What will then happen after you navigate to the desired 'Main' Project, is that all of its hierarchy will then appear in the Assets Panel of the Auxiliary Project, like so:

2_MainProjectResources.jpg

It is important to note that this reference 'Main Project' content is read-only.

What this means is that you can drag in a Component from the Main Project into the Auxiliary Project for usage. However, if you wanted to edit the Component, you would have to do so in the 'Main' Project, then save those changes for them to reflect in the Auxiliary Project using it.

(Since you can run multiple instances of Noesis Studio, each with a different Project open, it is however possible to just have the Main and Auxiliary both open at the same time, making this a pretty seamless experience.)

Now in terms of sharing Resources such as Templates, Styles, Colors, and many more --- once a Project Reference has been added, its Resources are then accessible and can be merged as desired:

3_MergeMainResources.jpg

(In this example, all of the ResourceDictionaries with the '_Core' suffix are from the Referenced Project.)


Once a ResourceDictionary from the other Project has been merged into the current Project, its Resources then become accessible in the same capacity as any of the Project's own Resources (with the exception, that just as before with Components, they are read-only here):

4_ResourcesAvailable.jpg

So, this should cover a lot of what you're looking for in terms of allowing access to 'base theming', and Components, among others.


2) Next, let's talk about sharing Data between a 'Main' and an Auxiliary Project:

a) Sharing of Studio Design-Time Data between Projects is not yet supported. (Please let us know how important this is to you, and we can discuss further)

b) Sharing of Engine Data is something that would have to be done at an Engine level.


3) Lastly, let's talk about sharing custom Code between a 'Main' and an Auxiliary Project:

Sharing code between Projects via Studio is something that is not yet supported.

Sharing stuff like Converters for example, is something that could be done in theory --- however the best holistic approach here would be to roll with integrating these into your own custom version of Noesis studio, shared by all Projects (Main, and all Auxiliaries). Similar to the above point on Data Sharing however, this is also something we can also discuss further and see what we can come up with as a best approach for your needs.

Let's start here as a general intro to the subject.
If you'd like to cover all of this with us face-to-face, we're always more than happy to get together to do so, just let us know!

- Dorian

Who is online

Users browsing this forum: Google [Bot] and 4 guests