Shared Presets

Reuse obfuscation configurations across your team and choose a shared starting configuration.

Share a preset

Only the team owner can publish shared presets. Configure the obfuscation options and select New Preset in the presets library. Give the preset a name, enable Share with my team, set an API alias if CI builds will use it, and select Save Preset.

To share an existing preset, open its menu, choose Edit, and enable Share with my team. To update its options, apply it, change the options, and select Update preset on its card.

Load or customize a shared preset

Members find shared configurations in the Team tab of the presets library and select Apply preset to apply one. Only the owner can change or delete the shared original. Choose Duplicate to my presets in its menu to create an independent personal copy that you can edit.

Set a team default

The owner can turn on Set as team default in a shared preset's edit form: open its menu and choose Edit. Only one preset can be the team default. Members can adjust their options after it loads. When the owner updates a shared preset, apply it again to pick up the changes.

Turn Set as team default off to stop using it as the default while keeping it shared. Turning off sharing also removes its default status. If the preset is enforced, removing it as the team default, turning off its sharing or deleting it also turns off Enforce team default preset.

Enforce the team default

Without enforcement, a team default is only a starting configuration in the dashboard: members can change it, and it does not affect API requests (see API Reference). A team owner can instead lock it. Open Settings → Team, turn on Enforce team default preset, and choose which preset to enforce in Preset to enforce. Choosing a preset there makes it the team default and shares it with the team. While enforced, members' options are read-only, and members' dashboard builds, member API calls and team service tokens all use the enforced preset. The owner's own personal builds and API calls are not enforced. Turn the switch off to return to a soft default. See Enforcing a Version to enforce a version the same way.

Use the configuration in CI

Without enforcement, an API or CI build can still use a shared preset by referencing its API alias in optionsPreset with the javascript-obfuscator package, or by fetching its options from the presets endpoint in a separate request (see API Reference); see the Custom presets section of Using the NPM Package. Keep separate configurations for functional tests and defended production builds. For functional test settings, see Testing and CI.