From 472de05e4b9be4a2c05ccaf7d84fadfb4908678e Mon Sep 17 00:00:00 2001 From: Kaj Kowalski Date: Sat, 24 May 2025 03:40:17 +0200 Subject: [PATCH] Enhance demo examples and update changelog - Added basic demo and simple example scripts for the Owen Animation System. - Created an interactive HTML demo with controls for state transitions and message handling. - Updated the changelog to reflect new features and improvements. - Modified package.json to include a separate development script for hosting. --- CHANGELOG.md | 46 +- examples/{ => basic-demo}/basic-demo.js | 2 +- examples/{ => basic-demo}/index.html | 2 +- examples/{ => basic-demo}/simple-example.js | 2 +- examples/mock-demo/owen_test_demo.html | 628 ++++++++++++++++++++ package.json | 3 +- 6 files changed, 666 insertions(+), 17 deletions(-) rename examples/{ => basic-demo}/basic-demo.js (99%) rename examples/{ => basic-demo}/index.html (98%) rename examples/{ => basic-demo}/simple-example.js (98%) create mode 100644 examples/mock-demo/owen_test_demo.html diff --git a/CHANGELOG.md b/CHANGELOG.md index 9681a8f..85483f7 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -17,20 +17,23 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ### Added -- 🎉 Initial release of Owen Animation System -- ✨ Complete state machine implementation with Wait, React, Type, and Sleep states -- 🤖 Emotional response system for character animations -- 🏗️ Clean architecture with dependency injection and factory patterns -- 📝 Animation naming convention parser -- 🔄 Smooth animation transitions with fade in/out support -- ⚡ Performance-optimized animation caching -- 🧩 Extensible design for custom states and emotions -- 📊 Comprehensive JSDoc documentation -- 🎮 Interactive demo with keyboard controls -- 📦 TypeScript type definitions -- 🛠️ Development tooling (ESLint, Vite, JSDoc) +- 🎯 Complete modular architecture with proper ES module structure +- 🧩 Extensible plugin system for custom states and emotions +- 📊 Comprehensive JSDoc documentation across all modules +- 🎮 Enhanced interactive demo with keyboard controls +- 📦 TypeScript type definitions for all components +- 🔧 Configuration system for fine-tuning behavior +- 🏗️ Examples directory with various implementation patterns +- 🚀 Vite-based development and build system -[1.0.1]: https://gitea.kajkowalski.nl/kjanat/Owen/releases/tag/v1.0.1 +### Enhanced + +- ⚡ Optimized animation caching with intelligent preloading +- 🤖 Advanced emotional analysis with broader message understanding +- 🔄 Sophisticated animation transitions with nested state support +- 📝 Extended animation naming convention with nested animations +- 🎨 Refined state machine behavior and transitions +- 🛠️ Improved development tooling integration ### Architecture @@ -90,4 +93,21 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 - Interactive controls for state transitions - Mock model implementation for development +## [0.1.0] - 2025-05-01 + +### Added + +- 🎉 First implementation of Owen Animation System +- ✨ Basic state machine implementation (Wait, React, Type, Sleep) +- 🤖 Simple emotional response system with basic message analysis +- 🏗️ Initial architecture with basic dependency injection pattern +- 📝 Basic animation naming parser for transitions and states +- 🔄 Basic animation transitions between states +- ⚡ Simple animation clip caching +- 🎮 Basic Three.js integration with GLTFLoader +- 🎭 Core state handlers with basic functionality +- 🛠️ Development environment foundations + +[1.0.1]: https://gitea.kajkowalski.nl/kjanat/Owen/releases/tag/v1.0.1 [1.0.0]: https://gitea.kajkowalski.nl/kjanat/Owen/releases/tag/v1.0.0 +[0.1.0]: https://gitea.kajkowalski.nl/kjanat/Owen/releases/tag/v0.1.0 diff --git a/examples/basic-demo.js b/examples/basic-demo/basic-demo.js similarity index 99% rename from examples/basic-demo.js rename to examples/basic-demo/basic-demo.js index a44062a..2305cc6 100644 --- a/examples/basic-demo.js +++ b/examples/basic-demo/basic-demo.js @@ -5,7 +5,7 @@ import * as THREE from 'three' import { GLTFLoader } from 'three/examples/jsm/loaders/GLTFLoader.js' -import { OwenSystemFactory, States } from '../src/index.js' +import { OwenSystemFactory, States } from '../../src/index.js' /** * Basic Owen Animation System demo diff --git a/examples/index.html b/examples/basic-demo/index.html similarity index 98% rename from examples/index.html rename to examples/basic-demo/index.html index d82854c..1742bdf 100644 --- a/examples/index.html +++ b/examples/basic-demo/index.html @@ -1,4 +1,4 @@ - + diff --git a/examples/simple-example.js b/examples/basic-demo/simple-example.js similarity index 98% rename from examples/simple-example.js rename to examples/basic-demo/simple-example.js index 3a0991d..bce243a 100644 --- a/examples/simple-example.js +++ b/examples/basic-demo/simple-example.js @@ -3,7 +3,7 @@ * @author Owen Animation System */ -import { OwenSystemFactory, States } from '../src/index.js' +import { OwenSystemFactory, States } from '../../src/index.js' /** * Simple example of using Owen Animation System diff --git a/examples/mock-demo/owen_test_demo.html b/examples/mock-demo/owen_test_demo.html new file mode 100644 index 0000000..71571a1 --- /dev/null +++ b/examples/mock-demo/owen_test_demo.html @@ -0,0 +1,628 @@ + + + + + + Owen Animation System Test + + + + +
+
+

🤖 Owen Animation Control Panel

+ +
+ + + +
Owen is typing...
+
+ +
+ + + + + +
+ +
+ +
+ + + + + +
+
+ +
+ + + + + +
+ +
+ + + + +
+ +
+ +
+
System initializing...
+
+
+
+ +
+
Owen System Status
+
State: Initializing
+
Emotion: Neutral
+
Last Activity: Now
+
Active Clips: 0
+
+ +
+
🤖
+
Initializing...
+
Neutral
+
+
+ + + + \ No newline at end of file diff --git a/package.json b/package.json index caab341..e7d05bd 100644 --- a/package.json +++ b/package.json @@ -6,7 +6,8 @@ "types": "src/index.d.ts", "type": "module", "scripts": { - "dev": "vite --host", + "dev": "vite", + "dev:host": "vite --host", "build": "vite build", "preview": "vite preview", "lint": "standard",