Skip to content

v2.0.0 — Modern Titanium SDK 13.x branding pipeline

Choose a tag to compare

@macCesar macCesar released this 18 Apr 23:49
· 26 commits to main since this release

New preset -p ti-branding generates a complete modern Titanium branding asset set from a single master in one command. Works on both Alloy and Classic project layouts.

What's new

  • New preset: -p ti-branding — modern pipeline; auto-detects Alloy (app/) vs Classic (Resources/) layouts
  • Backward-compat alias: -p alloy --modern — deprecated, will be removed in v3.0.0
  • Output set: DefaultIcon.png (alpha) + DefaultIcon-ios.png (flat), Android adaptive triplet × 5, legacy ic_launcher.png × 5, ic_launcher.xml binder, marketplace artwork, optional notification + splash icons

New flags

Flag Default Purpose
--modern, --adaptive, --marketplace, --notification, --splash off Select outputs (kitchen-sink with just -p ti-branding)
--bg-color <hex> #FFFFFF Also auto-flattens marketplace artwork when explicitly provided
--padding <pct> 20 Android safe-zone per side (Material spec floor: 19.44%)
--ios-padding <pct> 8 iOS / marketplace aesthetic padding
--cleanup-legacy off Context-aware cleanup driven by tiapp.xml
--aggressive off Cleanup also removes ldpi density folders
--in-place off Overwrite project directly, skip .ti-branding/ staging
--notes off Print full tiapp.xml snippets (default: compact summary)
--monochrome-master <path> — Dedicated silhouette master for Android 13+ themed icons and notification
--project, --output, --dry-run — Standard project/output/preview controls

Backward compatibility

-p alloy without modern flags keeps v1.x multi-scale pipeline unchanged. Not deprecated — different feature with no modern replacement.

Dependency

fast-xml-parser (~18KB, no native bindings) added for tiapp.xml parsing. Regex fallback if unavailable.

Tests

36 new tests (generators, tiapp-reader, cleanup-legacy buckets, CLI integration) + 60 existing passing.

Full changelog: CHANGELOG.md