@maccesar/titools 4.1.0 → 4.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (97) hide show
  1. package/README.md +22 -5
  2. package/bin/titools.js +4 -4
  3. package/commands/ti-audit.md +13 -0
  4. package/commands/ti-check.md +15 -0
  5. package/commands/ti-new-screen.md +18 -0
  6. package/lib/claude-plugin.js +105 -0
  7. package/lib/cleanup.js +18 -0
  8. package/lib/commands/doctor.js +75 -3
  9. package/lib/commands/skills.js +66 -6
  10. package/lib/commands/uninstall.js +32 -2
  11. package/lib/commands/update.js +15 -0
  12. package/lib/config.js +37 -0
  13. package/lib/installer.js +85 -1
  14. package/lib/symlink.js +40 -3
  15. package/package.json +2 -1
  16. package/skills/alloy-guides/references/MODELS.md +23 -0
  17. package/skills/alloy-guides/references/MODELS_ADVANCED.md +19 -0
  18. package/skills/alloy-guides/references/VIEWS_STYLES.md +12 -0
  19. package/skills/alloy-guides/references/VIEWS_XML.md +18 -0
  20. package/skills/purgetss/references/EXAMPLES.md +24 -0
  21. package/skills/purgetss/references/animation-advanced.md +12 -0
  22. package/skills/purgetss/references/animation-system.md +23 -0
  23. package/skills/purgetss/references/app-branding.md +23 -0
  24. package/skills/purgetss/references/apply-directive.md +17 -0
  25. package/skills/purgetss/references/arbitrary-values.md +13 -0
  26. package/skills/purgetss/references/class-index-properties.md +11 -0
  27. package/skills/purgetss/references/cli-commands.md +27 -0
  28. package/skills/purgetss/references/customization-deep-dive.md +15 -0
  29. package/skills/purgetss/references/dynamic-component-creation.md +16 -0
  30. package/skills/purgetss/references/migration-guide.md +20 -0
  31. package/skills/purgetss/references/multi-density-images.md +27 -0
  32. package/skills/purgetss/references/semantic-colors.md +15 -0
  33. package/skills/purgetss/references/tikit-components.md +17 -0
  34. package/skills/purgetss/references/titanium-resets.md +16 -0
  35. package/skills/purgetss/references/ui-ux-design.md +20 -0
  36. package/skills/ti-api/references/api-android.md +23 -0
  37. package/skills/ti-api/references/api-app-platform.md +24 -0
  38. package/skills/ti-api/references/api-core.md +24 -0
  39. package/skills/ti-api/references/api-data-network.md +21 -0
  40. package/skills/ti-api/references/api-media.md +15 -1
  41. package/skills/ti-api/references/api-modules-ble-bluetooth.md +26 -0
  42. package/skills/ti-api/references/api-modules-coremotion-urlsession.md +18 -0
  43. package/skills/ti-api/references/api-modules-map.md +21 -2
  44. package/skills/ti-api/references/api-modules-nfc.md +34 -0
  45. package/skills/ti-api/references/api-modules-social-misc.md +22 -0
  46. package/skills/ti-api/references/api-services.md +21 -1
  47. package/skills/ti-api/references/api-ui-android.md +18 -0
  48. package/skills/ti-api/references/api-ui-extras.md +19 -1
  49. package/skills/ti-api/references/api-ui-ios-animator.md +14 -0
  50. package/skills/ti-api/references/api-ui-ios.md +42 -0
  51. package/skills/ti-api/references/api-ui-lists.md +14 -2
  52. package/skills/ti-api/references/api-ui-text-input.md +15 -0
  53. package/skills/ti-api/references/api-ui-views.md +19 -0
  54. package/skills/ti-api/references/api-ui-windows-navigation.md +13 -0
  55. package/skills/ti-api/references/api-xml-global.md +31 -0
  56. package/skills/ti-expert/references/adaptive-layouts.md +14 -0
  57. package/skills/ti-expert/references/alloy-builtins.md +15 -0
  58. package/skills/ti-expert/references/alloy-structure.md +15 -0
  59. package/skills/ti-expert/references/code-conventions.md +19 -0
  60. package/skills/ti-expert/references/controller-patterns.md +18 -0
  61. package/skills/ti-expert/references/error-handling.md +16 -0
  62. package/skills/ti-expert/references/examples.md +17 -0
  63. package/skills/ti-expert/references/migration-patterns.md +15 -0
  64. package/skills/ti-expert/references/patterns.md +16 -0
  65. package/skills/ti-expert/references/performance-optimization.md +17 -0
  66. package/skills/ti-expert/references/security-device.md +13 -0
  67. package/skills/ti-expert/references/state-management.md +16 -0
  68. package/skills/ti-expert/references/testing-e2e-ci.md +17 -0
  69. package/skills/ti-expert/references/testing-unit.md +20 -0
  70. package/skills/ti-expert/references/theming.md +20 -0
  71. package/skills/ti-guides/references/app-distribution.md +34 -0
  72. package/skills/ti-guides/references/application-frameworks.md +13 -0
  73. package/skills/ti-guides/references/cli-reference.md +16 -0
  74. package/skills/ti-guides/references/hyperloop-native-access.md +21 -0
  75. package/skills/ti-guides/references/javascript-primer.md +12 -0
  76. package/skills/ti-guides/references/tiapp-config.md +15 -0
  77. package/skills/ti-howtos/references/android-platform-deep-dives.md +15 -0
  78. package/skills/ti-howtos/references/cross-platform-development.md +16 -0
  79. package/skills/ti-howtos/references/debugging-profiling.md +15 -0
  80. package/skills/ti-howtos/references/extending-titanium.md +14 -0
  81. package/skills/ti-howtos/references/ios-platform-deep-dives.md +16 -0
  82. package/skills/ti-howtos/references/local-data-sources.md +32 -0
  83. package/skills/ti-howtos/references/notification-services.md +12 -0
  84. package/skills/ti-howtos/references/remote-data-sources.md +15 -0
  85. package/skills/ti-howtos/references/tutorials.md +13 -0
  86. package/skills/ti-ui/references/animation-and-matrices.md +17 -0
  87. package/skills/ti-ui/references/application-structures.md +19 -0
  88. package/skills/ti-ui/references/custom-fonts-styling.md +18 -0
  89. package/skills/ti-ui/references/event-handling.md +16 -0
  90. package/skills/ti-ui/references/gestures.md +17 -0
  91. package/skills/ti-ui/references/icons-and-splash-screens.md +17 -0
  92. package/skills/ti-ui/references/layouts-and-positioning.md +16 -0
  93. package/skills/ti-ui/references/listviews-and-performance.md +21 -0
  94. package/skills/ti-ui/references/orientation.md +20 -0
  95. package/skills/ti-ui/references/platform-ui-android.md +20 -0
  96. package/skills/ti-ui/references/platform-ui-ios.md +17 -0
  97. package/skills/ti-ui/references/tableviews.md +24 -0
@@ -2,6 +2,22 @@
2
2
 
3
3
  Reference for Titanium CLI commands, options, and configuration.
4
4
 
5
+ <!-- TOC-START -->
6
+ ## Contents
7
+
8
+ - [Environment setup](#environment-setup)
9
+ - [Project commands](#project-commands)
10
+ - [Build commands](#build-commands)
11
+ - [Distribution commands](#distribution-commands)
12
+ - [SDK management](#sdk-management)
13
+ - [Configuration options](#configuration-options)
14
+ - [Common issues](#common-issues)
15
+ - [Command quick reference](#command-quick-reference)
16
+ - [SDK version precedence](#sdk-version-precedence)
17
+ - [References](#references)
18
+
19
+ <!-- TOC-END -->
20
+
5
21
  ## Environment setup
6
22
 
7
23
  ### Check environment
@@ -2,6 +2,27 @@
2
2
 
3
3
  Hyperloop lets you access native APIs (iOS Objective-C/Swift and Android Java/Kotlin) directly from JavaScript. It ships with the Titanium SDK and works as a native module.
4
4
 
5
+ <!-- TOC-START -->
6
+ ## Contents
7
+
8
+ - [1. Requirements](#1-requirements)
9
+ - [2. Enabling Hyperloop](#2-enabling-hyperloop)
10
+ - [3. Framework namespace conventions](#3-framework-namespace-conventions)
11
+ - [4. iOS (Objective-C)](#4-ios-objective-c)
12
+ - [5. iOS: creating custom classes](#5-ios-creating-custom-classes)
13
+ - [6. iOS: CocoaPods support](#6-ios-cocoapods-support)
14
+ - [7. iOS: Swift support](#7-ios-swift-support)
15
+ - [8. iOS: XIB and Storyboards](#8-ios-xib-and-storyboards)
16
+ - [9. iOS: customizing the Xcode build](#9-ios-customizing-the-xcode-build)
17
+ - [10. Android (Java)](#10-android-java)
18
+ - [11. Android: native XML layouts](#11-android-native-xml-layouts)
19
+ - [12. Android: third-party libraries](#12-android-third-party-libraries)
20
+ - [13. Debugging Hyperloop](#13-debugging-hyperloop)
21
+ - [14. Performance tips](#14-performance-tips)
22
+ - [15. Sample projects](#15-sample-projects)
23
+
24
+ <!-- TOC-END -->
25
+
5
26
  ## 1. Requirements
6
27
 
7
28
  - Titanium SDK: 9.0.0+
@@ -2,6 +2,18 @@
2
2
 
3
3
  Essential JavaScript concepts, resources, and best practices for Titanium development.
4
4
 
5
+ <!-- TOC-START -->
6
+ ## Contents
7
+
8
+ - [JavaScript overview](#javascript-overview)
9
+ - [Learning resources](#learning-resources)
10
+ - [Best practices](#best-practices)
11
+ - [Common patterns](#common-patterns)
12
+ - [ES6+ features in Titanium](#es6-features-in-titanium)
13
+ - [Gotchas to avoid](#gotchas-to-avoid)
14
+
15
+ <!-- TOC-END -->
16
+
5
17
  ## JavaScript overview
6
18
 
7
19
  JavaScript is the language of Titanium. It is lightweight and dynamic, with object-oriented and functional features.
@@ -2,6 +2,21 @@
2
2
 
3
3
  Reference for Titanium app configuration files. `tiapp.xml` is the main config file for Titanium apps. `timodule.xml` is for custom modules.
4
4
 
5
+ <!-- TOC-START -->
6
+ ## Contents
7
+
8
+ - [tiapp.xml structure](#tiappxml-structure)
9
+ - [Top-level elements](#top-level-elements)
10
+ - [Application properties](#application-properties)
11
+ - [Android section](#android-section)
12
+ - [iOS section](#ios-section)
13
+ - [Google Play Services](#google-play-services)
14
+ - [timodule.xml (module configuration)](#timodulexml-module-configuration)
15
+ - [SDK version precedence](#sdk-version-precedence)
16
+ - [References](#references)
17
+
18
+ <!-- TOC-END -->
19
+
5
20
  ## tiapp.xml structure
6
21
 
7
22
  ```xml
@@ -1,5 +1,20 @@
1
1
  # Android platform deep dives
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Android intent filters (advanced)](#1-android-intent-filters-advanced)
7
+ - [2. Broadcast intents with permissions](#2-broadcast-intents-with-permissions)
8
+ - [3. FusedLocationProvider (TiSDK 7.1.0+)](#3-fusedlocationprovider-tisdk-710)
9
+ - [4. Android intents](#4-android-intents)
10
+ - [5. Intent filters](#5-intent-filters)
11
+ - [6. Broadcast intents and receivers](#6-broadcast-intents-and-receivers)
12
+ - [7. Android services](#7-android-services)
13
+ - [8. Android permissions](#8-android-permissions)
14
+ - [Best practices](#best-practices)
15
+
16
+ <!-- TOC-END -->
17
+
3
18
  ## 1. Android intent filters (advanced)
4
19
 
5
20
  To receive implicit intents (for example, opening a PDF file or a web link), register a filter in the manifest.
@@ -2,6 +2,22 @@
2
2
 
3
3
  Strategies for building Titanium apps that run on iOS and Android from a single codebase.
4
4
 
5
+ <!-- TOC-START -->
6
+ ## Contents
7
+
8
+ - [Philosophy](#philosophy)
9
+ - [Platform identification](#platform-identification)
10
+ - [Coding strategies](#coding-strategies)
11
+ - [Platform-specific resources](#platform-specific-resources)
12
+ - [5. Webpack build pipeline (TiSDK 9.1.0+)](#5-webpack-build-pipeline-tisdk-910)
13
+ - [6. Internationalization (i18n)](#6-internationalization-i18n)
14
+ - [Platform-specific APIs](#platform-specific-apis)
15
+ - [Common cross-platform patterns](#common-cross-platform-patterns)
16
+ - [Best practices](#best-practices)
17
+ - [Resources](#resources)
18
+
19
+ <!-- TOC-END -->
20
+
5
21
  ## Philosophy
6
22
 
7
23
  ### "Write once, adapt everywhere"
@@ -2,6 +2,21 @@
2
2
 
3
3
  Guide to debugging Titanium apps, managing memory, finding leaks, and using native tools.
4
4
 
5
+ <!-- TOC-START -->
6
+ ## Contents
7
+
8
+ - [Debugging overview](#debugging-overview)
9
+ - [Memory management](#memory-management)
10
+ - [Memory leak detection](#memory-leak-detection)
11
+ - [Android debugging tools](#android-debugging-tools)
12
+ - [iOS debugging tools](#ios-debugging-tools)
13
+ - [6. Automation and UI testing](#6-automation-and-ui-testing)
14
+ - [Best practices](#best-practices)
15
+ - [Platform-specific notes](#platform-specific-notes)
16
+ - [Resources](#resources)
17
+
18
+ <!-- TOC-END -->
19
+
5
20
  ## Debugging overview
6
21
 
7
22
  ### Essential elements of debugging
@@ -1,5 +1,19 @@
1
1
  # Extending Titanium
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Module architecture (core concepts)](#1-module-architecture-core-concepts)
7
+ - [2. Module debugging in Xcode (iOS)](#2-module-debugging-in-xcode-ios)
8
+ - [3. Upgrading to SDK 9.0.0+ (Android)](#3-upgrading-to-sdk-900-android)
9
+ - [4. Hyperloop](#4-hyperloop)
10
+ - [3. Native module development](#3-native-module-development)
11
+ - [4. Choosing between Hyperloop and native modules](#4-choosing-between-hyperloop-and-native-modules)
12
+ - [5. Finding and using third-party modules](#5-finding-and-using-third-party-modules)
13
+ - [Best practices summary](#best-practices-summary)
14
+
15
+ <!-- TOC-END -->
16
+
3
17
  ## 1. Module architecture (core concepts)
4
18
 
5
19
  Titanium modules are based on a native class hierarchy that communicates with JavaScript:
@@ -1,5 +1,21 @@
1
1
  # iOS platform deep dives
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. iOS 17+ privacy requirements (critical)](#1-ios-17-privacy-requirements-critical)
7
+ - [2. Background services and silent push](#2-background-services-and-silent-push)
8
+ - [3. iCloud services and backup control](#3-icloud-services-and-backup-control)
9
+ - [4. WatchKit and Ti.WatchSession](#4-watchkit-and-tiwatchsession)
10
+ - [5. SiriKit and Siri intents](#5-sirikit-and-siri-intents)
11
+ - [6. Spotlight search (Core Spotlight)](#6-spotlight-search-core-spotlight)
12
+ - [7. Core Motion module](#7-core-motion-module)
13
+ - [8. Handoff user activities](#8-handoff-user-activities)
14
+ - [9. Additional iOS features](#9-additional-ios-features)
15
+ - [Best practices summary](#best-practices-summary)
16
+
17
+ <!-- TOC-END -->
18
+
3
19
  ## 1. iOS 17+ privacy requirements (critical)
4
20
  Apple requires declaring the use of certain APIs to prevent fingerprinting.
5
21
 
@@ -1,5 +1,37 @@
1
1
  # Local data sources
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Filesystem access and storage](#1-filesystem-access-and-storage)
7
+ - [Modules overview](#modules-overview)
8
+ - [Storage locations](#storage-locations)
9
+ - [File operations](#file-operations)
10
+ - [Directory operations](#directory-operations)
11
+ - [Case sensitivity warning](#case-sensitivity-warning)
12
+ - [2. SQLite database](#2-sqlite-database)
13
+ - [Installing a pre-populated database](#installing-a-pre-populated-database)
14
+ - [Opening databases](#opening-databases)
15
+ - [Querying data](#querying-data)
16
+ - [Parameterized queries](#parameterized-queries)
17
+ - [Data modification](#data-modification)
18
+ - [Transactions for batch operations](#transactions-for-batch-operations)
19
+ - [SQLite limitations](#sqlite-limitations)
20
+ - [Disable iCloud backup for databases (iOS)](#disable-icloud-backup-for-databases-ios)
21
+ - [Always close connections](#always-close-connections)
22
+ - [3. Properties API (Ti.App.Properties)](#3-properties-api-tiappproperties)
23
+ - [Overview](#overview)
24
+ - [Data type methods](#data-type-methods)
25
+ - [Usage examples](#usage-examples)
26
+ - [Storing complex objects as JSON](#storing-complex-objects-as-json)
27
+ - [Platform storage](#platform-storage)
28
+ - [4. Advanced data manipulation (Buffer, Codec, and Streams)](#4-advanced-data-manipulation-buffer-codec-and-streams)
29
+ - [5. Choosing a persistence strategy](#5-choosing-a-persistence-strategy)
30
+ - [Decision guide](#decision-guide)
31
+ - [Best practices](#best-practices)
32
+
33
+ <!-- TOC-END -->
34
+
3
35
  ## 1. Filesystem access and storage
4
36
 
5
37
  ### Modules overview
@@ -2,6 +2,18 @@
2
2
 
3
3
  Guide to local and push notifications on iOS and Android.
4
4
 
5
+ <!-- TOC-START -->
6
+ ## Contents
7
+
8
+ - [Local notifications: Android](#local-notifications-android)
9
+ - [Local notifications: iOS](#local-notifications-ios)
10
+ - [Interactive notifications: iOS (iOS 8+)](#interactive-notifications-ios-ios-8)
11
+ - [Push notifications](#push-notifications)
12
+ - [Common patterns](#common-patterns)
13
+ - [Platform-specific notes](#platform-specific-notes)
14
+
15
+ <!-- TOC-END -->
16
+
5
17
  ## Local notifications: Android
6
18
 
7
19
  ### Notification display locations
@@ -1,5 +1,20 @@
1
1
  # Remote data sources
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. HTTPClient and request lifecycle](#1-httpclient-and-request-lifecycle)
7
+ - [2. Working with JSON data](#2-working-with-json-data)
8
+ - [3. Working with XML data](#3-working-with-xml-data)
9
+ - [4. File uploads and downloads](#4-file-uploads-and-downloads)
10
+ - [5. Sockets](#5-sockets)
11
+ - [6. Dealing with SOAP web services](#6-dealing-with-soap-web-services)
12
+ - [7. SSL certificate and SecurityManager](#7-ssl-certificate-and-securitymanager)
13
+ - [8. CORS considerations for Mobile Web](#8-cors-considerations-for-mobile-web)
14
+ - [Best practices](#best-practices)
15
+
16
+ <!-- TOC-END -->
17
+
3
18
  ## 1. HTTPClient and request lifecycle
4
19
 
5
20
  ### Basic pattern
@@ -2,6 +2,19 @@
2
2
 
3
3
  Practical tutorials and guides for building real Titanium applications.
4
4
 
5
+ <!-- TOC-START -->
6
+ ## Contents
7
+
8
+ - [RESTe - API integration](#reste---api-integration)
9
+ - [Camera app tutorial](#camera-app-tutorial)
10
+ - [Geolocation tutorial](#geolocation-tutorial)
11
+ - [Alloy controller chaining](#alloy-controller-chaining)
12
+ - [Build automation with Fastlane](#build-automation-with-fastlane)
13
+ - [Additional tutorials](#additional-tutorials)
14
+ - [Resources](#resources-1)
15
+
16
+ <!-- TOC-END -->
17
+
5
18
  ## RESTe - API integration
6
19
 
7
20
  ### Overview
@@ -1,5 +1,22 @@
1
1
  # Animation, matrices, and transitions
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Overview](#1-overview)
7
+ - [2. Basic animations](#2-basic-animations)
8
+ - [3. 2D matrix animations](#3-2d-matrix-animations)
9
+ - [4. 3D matrix animations (iOS only)](#4-3d-matrix-animations-ios-only)
10
+ - [5. iOS transitions](#5-ios-transitions)
11
+ - [6. Dynamic animations (iOS only)](#6-dynamic-animations-ios-only)
12
+ - [7. Animation events](#7-animation-events)
13
+ - [8. Common animation patterns](#8-common-animation-patterns)
14
+ - [9. Performance considerations](#9-performance-considerations)
15
+ - [10. Platform differences](#10-platform-differences)
16
+ - [Best practices](#best-practices)
17
+
18
+ <!-- TOC-END -->
19
+
3
20
  ## 1. Overview
4
21
 
5
22
  Animations make state changes easier to read and can help an interface feel responsive. Use them with restraint. Titanium includes:
@@ -1,5 +1,24 @@
1
1
  # Application structures and core building blocks
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Overview](#1-overview)
7
+ - [2. Windows](#2-windows)
8
+ - [3. Views](#3-views)
9
+ - [4. TabGroups](#4-tabgroups)
10
+ - [6. NavigationWindow (iOS)](#6-navigationwindow-ios)
11
+ - [7. Modal windows](#7-modal-windows)
12
+ - [8. Heavyweight vs lightweight windows](#8-heavyweight-vs-lightweight-windows)
13
+ - [9. Window hierarchy and stacking](#9-window-hierarchy-and-stacking)
14
+ - [10. Platform-specific navigation](#10-platform-specific-navigation)
15
+ - [11. Execution contexts](#11-execution-contexts)
16
+ - [12. Common patterns](#12-common-patterns)
17
+ - [13. Best practices](#13-best-practices)
18
+ - [14. Platform differences summary](#14-platform-differences-summary)
19
+
20
+ <!-- TOC-END -->
21
+
3
22
  ## 1. Overview
4
23
 
5
24
  Titanium apps are built from three core components.
@@ -1,5 +1,23 @@
1
1
  # Custom fonts and attributed strings
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Custom fonts overview](#1-custom-fonts-overview)
7
+ - [2. Platform-specific font loading](#2-platform-specific-font-loading)
8
+ - [3. Alloy projects](#3-alloy-projects)
9
+ - [4. Classic Titanium projects](#4-classic-titanium-projects)
10
+ - [5. Finding the PostScript name](#5-finding-the-postscript-name)
11
+ - [6. iOS platform notes](#6-ios-platform-notes)
12
+ - [7. Attributed strings](#7-attributed-strings)
13
+ - [8. Attribute types](#8-attribute-types)
14
+ - [9. iOS-exclusive attributes](#9-ios-exclusive-attributes)
15
+ - [10. Multiple attributes example](#10-multiple-attributes-example)
16
+ - [11. Best practices](#11-best-practices)
17
+ - [12. Common issues](#12-common-issues)
18
+
19
+ <!-- TOC-END -->
20
+
3
21
  ## 1. Custom fonts overview
4
22
 
5
23
  Titanium supports TrueType (`.ttf`) and OpenType (`.otf`) fonts on iOS and Android. Custom fonts are a practical way to match a brand or add a distinct tone to your UI.
@@ -1,5 +1,21 @@
1
1
  # Event handling
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Event listener pattern](#1-event-listener-pattern)
7
+ - [3. Firing events](#3-firing-events)
8
+ - [5. Touch events](#5-touch-events)
9
+ - [6. Named vs anonymous functions](#6-named-vs-anonymous-functions)
10
+ - [7. Removing event listeners](#7-removing-event-listeners)
11
+ - [8. Android hardware button events](#8-android-hardware-button-events)
12
+ - [9. Android menu](#9-android-menu)
13
+ - [10. Event listener best practices](#10-event-listener-best-practices)
14
+ - [11. Special considerations](#11-special-considerations)
15
+ - [Best practices summary](#best-practices-summary)
16
+
17
+ <!-- TOC-END -->
18
+
3
19
  ## 1. Event listener pattern
4
20
 
5
21
  ### Basic pattern
@@ -1,5 +1,22 @@
1
1
  # Gestures
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Overview](#1-overview)
7
+ - [2. Touch events](#2-touch-events)
8
+ - [3. Swipe gesture](#3-swipe-gesture)
9
+ - [4. Pinch gesture (iOS only)](#4-pinch-gesture-ios-only)
10
+ - [5. Long press gesture](#5-long-press-gesture)
11
+ - [6. Shake gesture](#6-shake-gesture)
12
+ - [7. Accelerometer as input](#7-accelerometer-as-input)
13
+ - [8. Gesture lifecycle management](#8-gesture-lifecycle-management)
14
+ - [9. Platform-specific considerations](#9-platform-specific-considerations)
15
+ - [10. Best practices](#10-best-practices)
16
+ - [11. Combining gestures](#11-combining-gestures)
17
+
18
+ <!-- TOC-END -->
19
+
3
20
  ## 1. Overview
4
21
 
5
22
  Titanium supports more than simple taps.
@@ -1,5 +1,22 @@
1
1
  # Icons and splash screens
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Overview](#1-overview)
7
+ - [2. Asset locations](#2-asset-locations)
8
+ - [3. DefaultIcon.png (recommended)](#3-defaulticonpng-recommended)
9
+ - [4. iOS icons](#4-ios-icons)
10
+ - [5. Android icons](#5-android-icons)
11
+ - [6. Android splash screens](#6-android-splash-screens)
12
+ - [7. Localized splash screens](#7-localized-splash-screens)
13
+ - [8. Adaptive icons (Android 8.0+)](#8-adaptive-icons-android-80)
14
+ - [9. Common issues](#9-common-issues)
15
+ - [11. iOS launch files (storyboards)](#11-ios-launch-files-storyboards)
16
+ - [Best practices](#best-practices)
17
+
18
+ <!-- TOC-END -->
19
+
3
20
  ## 1. Overview
4
21
 
5
22
  App icons and splash screens are required for app store submissions and give users a branded first impression.
@@ -1,5 +1,21 @@
1
1
  # Layouts, positioning, and view hierarchy
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [Critical: platform-specific properties require modifiers](#critical-platform-specific-properties-require-modifiers)
7
+ - [1. Units of measurement](#1-units-of-measurement)
8
+ - [2. Positioning properties](#2-positioning-properties)
9
+ - [3. Layout modes](#3-layout-modes)
10
+ - [4. Auto-size behaviors](#4-auto-size-behaviors)
11
+ - [5. Combining layouts](#5-combining-layouts)
12
+ - [6. View hierarchy and zIndex](#6-view-hierarchy-and-zindex)
13
+ - [7. Common layout patterns](#7-common-layout-patterns)
14
+ - [8. Platform considerations](#8-platform-considerations)
15
+ - [Best practices](#best-practices)
16
+
17
+ <!-- TOC-END -->
18
+
3
19
  ## Critical: platform-specific properties require modifiers
4
20
 
5
21
  Do not use `Ti.UI.iOS.*` or `Ti.UI.Android.*` properties without modifiers. It will break builds.
@@ -1,5 +1,26 @@
1
1
  # ListViews and performance optimization
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Overview](#1-overview)
7
+ - [2. Basic ListView structure](#2-basic-listview-structure)
8
+ - [3. Templates](#3-templates)
9
+ - [4. Data binding](#4-data-binding)
10
+ - [5. Section operations](#5-section-operations)
11
+ - [6. Events](#6-events)
12
+ - [7. Critical performance rules](#7-critical-performance-rules)
13
+ - [8. iOS action items (swipe actions)](#8-ios-action-items-swipe-actions)
14
+ - [9. Editing mode (iOS)](#9-editing-mode-ios)
15
+ - [10. Search](#10-search)
16
+ - [11. Performance best practices](#11-performance-best-practices)
17
+ - [12. Transitioning from TableView](#12-transitioning-from-tableview)
18
+ - [13. Common patterns](#13-common-patterns)
19
+ - [14. Platform differences](#14-platform-differences)
20
+ - [15. Debugging](#15-debugging)
21
+
22
+ <!-- TOC-END -->
23
+
3
24
  ## 1. Overview
4
25
 
5
26
  ListView is a data-oriented, high-performance replacement for TableView. It handles large datasets by recycling native views and managing the item lifecycle for you.
@@ -1,5 +1,25 @@
1
1
  # Orientation
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Overview](#1-overview)
7
+ - [2. Design principles](#2-design-principles)
8
+ - [3. Orientation modes](#3-orientation-modes)
9
+ - [4. Locking orientation](#4-locking-orientation)
10
+ - [5. Handling orientation changes](#5-handling-orientation-changes)
11
+ - [6. Adapting UI to orientation](#6-adapting-ui-to-orientation)
12
+ - [7. Platform differences](#7-platform-differences)
13
+ - [8. Checking current orientation](#8-checking-current-orientation)
14
+ - [9. Disabling orientation change](#9-disabling-orientation-change)
15
+ - [10. Orientation lock limitations](#10-orientation-lock-limitations)
16
+ - [11. Modal window constraints (iOS)](#11-modal-window-constraints-ios)
17
+ - [12. Splash screen configuration](#12-splash-screen-configuration)
18
+ - [13. Best practices](#13-best-practices)
19
+ - [14. Common issues](#14-common-issues)
20
+
21
+ <!-- TOC-END -->
22
+
3
23
  ## 1. Overview
4
24
 
5
25
  Orientation is whether the app displays in portrait or landscape, and how it reacts when the device rotates.
@@ -1,5 +1,25 @@
1
1
  # Android UI components and conventions
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Action bar](#1-action-bar)
7
+ - [2. Android themes](#2-android-themes)
8
+ - [3. Options menu](#3-options-menu)
9
+ - [4. Status bar notifications](#4-status-bar-notifications)
10
+ - [5. Progress bars](#5-progress-bars)
11
+ - [6. Tab groups and tabs](#6-tab-groups-and-tabs)
12
+ - [7. Hardware back button handling](#7-hardware-back-button-handling)
13
+ - [8. Notification drawer](#8-notification-drawer)
14
+ - [9. Android UI conventions](#9-android-ui-conventions)
15
+ - [10. Material design components](#10-material-design-components)
16
+ - [11. Toast notifications](#11-toast-notifications)
17
+ - [12. HTML labels and linkification](#12-html-labels-and-linkification)
18
+ - [13. Nine-patch images](#13-nine-patch-images)
19
+ - [Best practices](#best-practices)
20
+
21
+ <!-- TOC-END -->
22
+
3
23
  ## 1. Action bar
4
24
 
5
25
  ### Overview
@@ -1,5 +1,22 @@
1
1
  # iOS UI components and conventions
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Overview](#1-overview)
7
+ - [2. iPad-only UI components](#2-ipad-only-ui-components)
8
+ - [3. Badges](#3-badges)
9
+ - [4. Settings.bundle integration](#4-settingsbundle-integration)
10
+ - [5. Quick Actions and 3D Touch](#5-quick-actions-and-3d-touch)
11
+ - [6. Navigation bar (iOS)](#6-navigation-bar-ios)
12
+ - [Community-Discovered Patterns](#community-discovered-patterns)
13
+ - [7. Tab bar](#7-tab-bar)
14
+ - [8. Activity indicator](#8-activity-indicator)
15
+ - [9. Platform best practices](#9-platform-best-practices)
16
+ - [10. Common issues](#10-common-issues)
17
+
18
+ <!-- TOC-END -->
19
+
3
20
  ## 1. Overview
4
21
 
5
22
  iOS has UI components and patterns that differ from Android. This guide covers iPad-only controls, badges, Settings integration, 3D Touch, and iOS navigation patterns.
@@ -1,5 +1,29 @@
1
1
  # TableViews
2
2
 
3
+ <!-- TOC-START -->
4
+ ## Contents
5
+
6
+ - [1. Overview](#1-overview)
7
+ - [2. TableView vs ListView](#2-tableview-vs-listview)
8
+ - [3. Creating a TableView](#3-creating-a-tableview)
9
+ - [4. Creating rows](#4-creating-rows)
10
+ - [5. Row properties](#5-row-properties)
11
+ - [6. Custom rows](#6-custom-rows)
12
+ - [7. Headers and footers](#7-headers-and-footers)
13
+ - [8. Grouped table style (iOS)](#8-grouped-table-style-ios)
14
+ - [9. Editing mode](#9-editing-mode)
15
+ - [10. TableView events](#10-tableview-events)
16
+ - [11. Searching](#11-searching)
17
+ - [12. Updating table data](#12-updating-table-data)
18
+ - [13. TableView sections](#13-tableview-sections)
19
+ - [14. Performance optimization](#14-performance-optimization)
20
+ - [15. Common patterns](#15-common-patterns)
21
+ - [16. Platform differences](#16-platform-differences)
22
+ - [17. Migration: TableView to ListView](#17-migration-tableview-to-listview)
23
+ - [Best practices](#best-practices)
24
+
25
+ <!-- TOC-END -->
26
+
3
27
  ## 1. Overview
4
28
 
5
29
  TableView is a scrolling list component that displays rows of data. ListView is the recommended modern API for most cases, but TableView is still useful for: