Changelog
All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
[Unreleased]
[1.2.1] - 2025-12-08
Added
- Enhanced Render Props:
renderInfo,renderActions, andrenderChangelognow receive comprehensive prop objects (RenderInfoProps,RenderActionsProps, etc.) containing all necessary state and callbacks (e.g.,checkForUpdate,status,otaVersion). - Controlled Components:
OTAUpdateInfo,OTAUpdateActions, andOTAUpdateChangelognow accept partial props to override context values, enabling full customization.
Changed
- Documentation: Added detailed "Customization" guide to
info-screen.mdwith examples for custom components and render props. - Documentation: Optimized screenshot size in docs for better readability.
Fixed
- Types: Exported
RenderInfoProps,RenderActionsProps,RenderChangelogPropsfrom main package.
Added
- Refactored Architecture: Split
OTAInfoScreeninto modular, exported sub-components (OTAUpdateInfo,OTAUpdateActions,OTAUpdateChangelog). - Render Props: Added
renderInfo,renderActions,renderChangelogfor full UI customization. - Mode Support: Added
modeprop ('developer' | 'user') toOTAInfoScreento toggle between debug-heavy and user-friendly views. - Improved Feedback: Added native alerts for "Check for Update" results (Available, Up to Date, Error, Skipped).
- Simulation Mode: Added
simulateUpdate()debug action to test update flows without a real update. - Granular Control: Added explicit visibility props (
showRuntimeVersion,showUpdateId, etc.) to toggle individual info rows. - Enhanced UI: Completely redesigned with a modern card-based layout, grouped info sections, and distinct action buttons.
Changed
- Accessibility: Moved critical Action Buttons and Debug tools above the Changelog section to eliminate scrolling.
- Visuals: improved spacing, typography, and section separation.
Fixed
- Fixed missing
downloadingstatus in TypeScript definitions.
[1.1.5] - 2025-12-07
Fixed
- Fixed documentation home page layout features section.
- Updated README with clearer global CLI usage instructions.
[1.1.4] - 2025-12-07
Fixed
- Added missing
binfield topackage.jsonto properly linkota-publishexecutable. - Fixed
command not founderror when running vianpx.
[1.1.3] - 2025-12-07
Added
- Documentation Site: Launched comprehensive VitePress documentation.
- 15+ pages covering Guides, UI Components, CLI, and Examples.
- Search functionality and mobile responsive design.
- Screenshots: Added visual showcase for UI components in README and Docs.
- GitHub Actions: Automated workflow to deploy documentation to GitHub Pages on push.
- Marketing: Added
MARKETING.mdwith social media assets.
Changed
- Updated
README.mdwith dedicated documentation section and improved navigation. - Removed Photo Trim logo from global docs navigation (now in sponsor section).
[1.1.0] - 2025-12-07
Changed
- Initial npm release.
- Updated package exports for better ESM/CJS compatibility.
[1.0.0] - 2025-12-07
Added
UI Components
OTAUpdatesProvidercontext provider with state managementUpdateBanneranimated component with gradient and pulse animationOTAInfoScreenfull debug/info screen with changelog displayuseOTAUpdateshook for accessing update state and actions- Full theming support with dark and light presets
- i18n support with customizable translations
- Render props for component customization
- Icon support using lucide-react-native with text fallbacks
- Auto-check on mount and foreground
- Debug
simulateUpdate()function for testing
CLI Publishing Tool
ota-publishCLI command for publishing OTA updatesota-publish initcommand to initialize configuration- Configuration system using cosmiconfig (supports
.js,.mjs,.json) - Zod schema validation for type-safe configuration
- Multiple version strategies:
build— Increment build number only (default)semver— Auto-increment patch versiondate— Date-based versioning
- Multiple changelog sources:
git— Auto-generate from git commits (default)manual— Interactive promptsfile— Read from CHANGELOG.md or custom file
- Interactive mode with prompts (
--interactive) - Dry-run support (
--dry-run) - Custom changelog messages (
--message) - Hooks system for custom logic:
beforePublish— Run before publishingafterPublish— Run after successful publishonError— Handle publish errors
- EAS integration with automatic publishing
- Multi-channel support (development, preview, production)
- Beautiful CLI output with colors and spinners
Documentation
- Comprehensive README with usage examples
- Separate CLI documentation (CLI.md)
- TypeScript type definitions
- MIT License
- Marketing section featuring Photo Trim app
Build & Distribution
- Dual build output (CJS + ESM) for UI components
- ESM build for CLI tool
- TypeScript declarations (.d.ts)
- Executable bin wrapper
- Proper package.json exports configuration
Planned
- Rollback command to revert to previous version
- Promote command to copy updates between channels
- GitHub Actions workflow examples
- More version format templates
- Custom version strategy support