With io.Connect Desktop 10.0, we introduced two platform modes – default and advanced. This comparison will help you choose which platform mode to use for your environment and when it makes sense to run both in parallel.
What are the io.Connect Desktop Platform Modes?
TLDR: You can now run io.Connect Desktop in either the default (OS-independent) or advanced (Windows-only) platform mode. Use the default platform mode when you have users on both Windows and macOS and want to keep exactly the same config and process for both. Use the advanced platform mode when your Windows users need visual integration of Windows desktop apps or still rely on classic groups. Use both when you want to enable macOS users to run the platform on their desktops and also ship a Windows-only advanced build for users who need visual integration of native Windows apps. Switching is just a configuration change (advancedMode in system.json) in your Seed Project, so you can start with default and change to advanced later, or vice versa.
Read on for details and use cases.
Note:
Default and Advanced are platform modes of the same io.Connect Desktop version (for example 10.0), not separate products. You control the mode via the
advancedModesetting insystem.json(typically throughsystem.json.mergefiles in your Seed Project), so from a single Seed Project you can build installers that run the platform in default mode or in advanced mode.
Default platform mode: When to Use
The default platform mode gives you the full io.Connect Desktop experience for web apps (for example JavaScript/TypeScript apps and frameworks like React, Angular, Node.js, Dash, and other web frameworks organized visually in web groups) on both Windows and macOS from a single Seed Project and configuration. It is OS-independent and explicitly provides support for both operating systems, with web groups as the window-grouping mechanism.
All the core UX and APIs for web apps like Launchpad, Workspaces, Layouts, notifications, Channels, Shared Contexts, App Intents, and so on, work the same way in default mode as in advanced mode, using the same workspace definitions and layouts configuration. For web apps, you do not need a separate advanced build to use Workspaces or Layouts.
Interoperability with interop-enabled desktop apps remains available in this mode - desktop windows (for example Java or .NET apps on Windows) can still use Channels, Interop methods, Shared Contexts, and more to exchange data with other apps, even though they cannot be visually snapped into groups or participate in Workspaces and Layouts. Default mode limitations are documented here. Those are: lack of classic groups, visual integration of desktop apps, certain popup/window management behaviors, and the items listed under “… features that haven’t been implemented yet in the default platform mode” (which can be implemented upon client request), while everything else continues to work as usual. If your use cases don’t depend on those specific advanced behaviors, you can safely standardize on default mode and get a consistent build across Windows and macOS.
The big win is that with the Seed Project, you can maintain consistent branding, configuration, and workspace definitions across both versions, simplifying management and updates.
Choose Default if:
- You have users on both Windows and macOS, or plan to support macOS in the future, and want to use the same configuration and Seed Project for both.
- Your use cases do not require visual window integration of desktop apps installed on Windows (e.g. Java/.NET applications) or continued support for classic groups (which are now deprecated).
- If you (or other developers in your org) use Macs for development, you’ll will love the MacOS support avaliability
For details about io.Connect Desktop on macOS, see our macOS Support documentation page.
Advanced platform mode: When to Use
The advanced platform mode is intended for organizations that haven’t yet migrated from classic groups and need visual integration of Desktop Windows applications. Advanced mode is Windows-only. Note that we strongly recommend you to migrate to web groups from classic groups. io.Connect web groups are implemented with web technologies and let you fully customize the group frame and window elements, while also enabling true transparency and web-only features such as tab overflow. Read about the difference here - Web Groups vs. Classic Groups Comparison. In case you have any concerns related to the migration from classic groups, please post on the community or contact your CSM.
Choose Advanced if:
- Your workflows depend on visually integrating Windows Desktop applications (Java/.NET) into Layouts/Workspaces.
- Your environment is exclusively Windows, with no plans to support macOS (advanced mode can be used only on Windows).
Combining Default and Advanced: Hybrid Delivery for Maximum Flexibility
For some organizations, a flexible approach is to leverage both the Default and Advanced platform modes in parallel. This hybrid strategy allows you to maximize platform coverage and take advantage of the strengths of each platform mode.
When to Combine Default and Advanced
- Mixed User Base: Organizations with teams split between Windows and macOS can deliver Default mode for Mac users and Advanced mode for a specific group of users that require visual integration with desktop apps installed on Windows (e.g. Java/.NET).
- Transition Periods: If you’re migrating to Default for cross-platform support but still rely on classic groups, you can run both versions side by side. This gives you time for migration to web groups, and gradually transition teams and workflows at your own pace.
- Phased Rollouts: Roll out Default to new users or business units while maintaining the Advanced version for legacy workflows, ensuring business continuity. Prepare your organization for broader macOS adoption while continuing to support critical Advanced workflows.
Next Steps
- Ready for 10.0? We’ve prepared an Upgrade to 10.0 document.
- Want to learn more about io.Connect Desktop on macOS? Read our Mac Support Article.
- Ready to explore the Seed Project model? Dive into the Seed Project documentation page.