Skip to main content

Managing Televo Versions

Televo leverages JSON structures to define the UI layouts your application will render. As your app evolves, these JSON structures may change. Versioning these JSON responses ensures a seamless experience for your users, regardless of whether they're using older or newer versions of your app.

Why Versioning is Crucial

  • Backward Compatibility: Older versions of your app should still function correctly when encountering UI definitions from previous JSON versions. Versioning ensures that your app can gracefully handle older layouts.
  • Forward Compatibility: Newer versions of your app need to understand and render updated UI structures correctly. Versioning provides the necessary information for newer apps to adapt to changes.
  • Controlled Rollouts: With versioning, you can gradually roll out new UI designs to specific user segments (e.g., by region or user type) for testing and feedback before a full release.
  • A/B Testing: Versioning allows you to easily compare the performance and user engagement of different UI iterations.
  • Rollback Mechanisms: In the event of unexpected issues with a new UI, versioning enables a quick and safe rollback to a previous, known-good version.

Adding Version Information

To implement versioning, Televo introduces a version object within the JSON response:

{
"child": {
// ... your existing UI structure ...
},
"version": {
"versionName": "1.2.0", // Human-readable version (e.g., "1.2.0")
"versionCode": 120, // Integer code for programmatic comparison
"updateTime": "2024-05-27T14:30:00Z", // ISO 8601 timestamp
"updateUser": {
"email": "developer@example.com"
},
"description": "Added new payment options UI." // Optional description
}
}
  • versionName: A string representation of the version, typically following semantic versioning (e.g., "1.2.0").
  • versionCode: An integer that can be used for simple version comparisons. Increment this with each new UI version.
  • updateTime: The date and time (in ISO 8601 format) when the JSON structure was last modified.
  • updateUser: Information about the developer who made the update (e.g., email address).
  • description: (Optional) A brief description of the changes in this version.

By incorporating versioning into your Televo JSON structures, you'll enhance the stability, flexibility, and maintainability of your app's UI layer, ensuring a smooth transition for your users as you introduce new features and improvements.