- Changed "harness" to "framework" for better accuracy in describing Text-to-Lottie.
- Revised the description of the agent's setup process to provide clearer instructions on workspace and player functionality.
- Updated CanvasProvider to include a refetch mechanism for scene data upon external edits to the Lottie file.
- Modified loadScene function to disable caching for Lottie file fetches, ensuring the latest version is always loaded.
- Implemented a self-write tracking system in the scenes plugin to differentiate between internal and external changes, triggering live reloads only for the latter.
- Included a new References section in SKILL.md to provide a link to the Lottie format specification documentation.
- This addition aims to enhance the resourcefulness of the document for users seeking detailed information on Lottie animations.
- Deleted the controls.json file as it is no longer needed.
- Updated lottie.json to reflect changes in naming and structure, including renaming the main scene and modifying layer properties for improved clarity and functionality.
- Added context menu functionality to allow users to delete scenes and projects directly from the UI.
- Integrated deleteScene and deleteProject functions to handle deletion requests and navigation upon deletion.
- Updated SceneItem and SidebarLeft components to utilize context menus for improved user interaction.
- Enhanced CSS for context menu styling to ensure a consistent and visually appealing design.
- Implemented a dynamic color scheme toggle based on user preferences for improved accessibility.
- Updated CSS variables for light and dark themes to ensure consistent styling.
- Refined the NumericSlider component by removing default box-shadow and border styles for a cleaner appearance.
- Adjusted button styles in base.css to support dark mode while maintaining visual consistency.
- Introduced a focus-visible style to enhance keyboard navigation and accessibility.
- Applied a consistent inset border and box-shadow for focused elements, overriding default styles.
- Ensured smooth transitions for focus effects to improve user experience.
- Integrated UI context to manage the visibility of controls in SidebarLeft and SidebarRight.
- Updated App component to conditionally render ScenesContainer based on control expansion state.
- Adjusted SidebarLeft and SidebarRight widths dynamically based on control visibility for improved user experience.
- Refactored SidebarLeft to include project management features only when controls are expanded.
- Added functionality to track and report live playback state, including project, scene, frame, and playback status.
- Introduced server middleware to handle browser heartbeat updates and provide context for active projects and scenes.
- Enhanced scene metadata retrieval with last modified timestamps for better asset management.
- Updated onKeyDown function to handle space key for toggling playback.
- Implemented arrow key navigation to step through frames and seconds.
- Improved input handling to prevent key hijacking while typing in editable fields.
- Introduced "fflate" dependency for improved compression handling.
- Updated SidebarRight to utilize new commitSource function for saving Lottie JSON edits.
- Refactored Lottie JSON structure for better readability and maintainability.
- Implemented server middleware to handle Lottie JSON updates, ensuring the source of truth is maintained.
- Set default project name in SidebarLeft input to "New project" for better user experience.
- Implemented input focus and selection handling for improved usability.
- Added CSS variables for selection colors and styles to enhance visual feedback during text selection.
- Added "nm" property to lottie.json to specify the scene name.
- Refactored SceneItem component to streamline button structure and enhance styling with consistent class usage.
- Simplified rendering logic for thumbnail images within the SceneItem component.
- Replaced inline scene rendering logic with a dedicated SceneItem component for better readability and maintainability.
- Integrated thumbnail loading using createResource for each scene, enhancing performance and user experience.
- Updated scene navigation logic to maintain existing functionality while improving code organization.
- Added SceneRoute component to manage scene availability and loading states.
- Introduced NotFound component for improved user feedback when a project or scene is not found.
- Updated routing to utilize SceneRoute for dynamic scene rendering and replaced generic not found message with NotFound component.
- Implemented addScene function in ScenesContainer for dynamic scene addition.
- Enhanced SidebarLeft to allow project creation with input handling and keyboard events.
- Updated server middleware to handle project and scene creation requests, ensuring unique slugs and default scene setup.
- Improved user experience with input focus and blur handling for project naming.
- Integrated scenesPlugin into Vite configuration for improved scene handling.
- Removed obsolete controls.json and lottie.json files to streamline project assets.
- Refactored App component to eliminate CanvasProvider, simplifying the component hierarchy.
- Updated routing to include scene navigation and default redirection based on available scenes.
- Enhanced ScenesContainer and SidebarLeft components for dynamic project and scene management.
- Improved CanvasProvider to load scene-specific data and manage animations effectively.
- Updated .gitignore to include new build and environment files.
- Upgraded dependencies in package.json and bun.lock, including major updates for canvaskit-wasm and tailwind-merge.
- Removed outdated package-lock.json and tsconfig files.
- Replaced React with Solid.js for improved performance and reactivity.
- Introduced new components and updated the app structure for better organization.
- Added new SVG icons and fonts for enhanced UI.
- Updated index.html and CSS for improved styling and layout consistency.
- Introduced a LICENSE file with MIT licensing terms.
- Renamed project from "lottie-experiments" to "text-to-lottie" in package.json.
- Added license information to package.json.
- Updated README.md to reflect project name change and improved usage instructions.
- Revised SKILL.md to clarify the authoring process for Lottie files.
Implement a new downloadConfiguredLottie function in App.tsx to create a downloadable Lottie JSON file with current slot values. Update PropertiesPanel to include an onExport prop, allowing users to trigger the download with the current values applied. This enhances user interaction by enabling easy export of customized animations.