Commit graph

128 commits

Author SHA1 Message Date
e1865e7808 chore(release): bump version to 0.15.0
- Updated `VERSION` in `version.ts` to `0.15.0`.
- Updated `npm` badge in `README.md` to reflect version `0.15.0`.
- Updated `version` field and dependency reference in `cli-package/package.json` to `0.15.0`.

**Purpose**: Prepare for release by synchronizing version across source files, documentation, and package dependencies.
2025-07-21 14:00:49 -07:00
69a3c8504a 0.15.0 2025-07-21 14:00:40 -07:00
17539244eb feat: reformat imports and exports for consistency and readability
- Updated all imports and exports in `src/index.ts` and `src/storage/storageFactory.ts` to use a consistent formatting style.
- Enhanced readability by standardizing spacing, alignment, and indentation across the codebase.
- Applied consistent import/export styling for structured comments and multi-line objects.

**Purpose**: Improve code maintainability and readability by enforcing uniform formatting, aligning imports and exports for better clarity.
2025-07-21 13:59:33 -07:00
e3eebaf476 feat(tests): add robust mock implementations and expand test coverage for S3 and OPFS storage
- Introduced comprehensive mock for the Origin Private File System (OPFS) in `tests/mocks/opfs-mock.ts`, simulating environment for detailed storage testing.
- Added `tests/opfs-storage.test.ts`, containing extensive test cases for `OPFSStorage` operations including metadata, nouns, verbs, and storage status.
- Improved S3 mock implementation in `tests/mocks/s3-mock.ts` with better object persistence, validation, and logging to emulate real S3 behavior.
- Resolved issues related to metadata, nouns, verbs, and storage usage inconsistencies in mock storage adapters.
- Enhanced logging and error handling to aid in debugging and test reliability.

Purpose: Improve test completeness and reliability by introducing detailed mocks and extended test cases for S3 and OPFS storage systems.
2025-07-21 13:42:10 -07:00
e1632523b4 feat(types): extend FileSystemHandle and optimize imports for consistency
- Added `getFile` method to `FileSystemHandle` interface for enhanced TypeScript compatibility with File System Access API.
- Improved maintainability by reformatting and aligning imports in `brainyData.ts`.
- Standardized spacing and indentation across structured comments and interface fields.

Purpose: Improve TypeScript support for file system operations and enhance code readability with consistent formatting and import management.
2025-07-21 12:48:03 -07:00
7cec5fb90a feat(docs): update README to highlight new consolidated storage structure
- Documented the use of a simplified, unified storage structure for all noun types.
- Enhanced storage system explanation to reflect recent architectural improvements.

Purpose: Improve developer understanding of the storage system by updating documentation with the latest features and design changes.
2025-07-21 12:47:37 -07:00
cad30178ee feat(tests): replace old test scripts with updated test suite for storage and reporting
- Removed outdated test files: `test-tensorflow-import.cjs`, `test-tensorflow-import.js`, and `verify-package-size.js`.
- Introduced `tests/package-size-breakdown.test.ts` to analyze included npm package files and validate their sizes.
- Added comprehensive tests for storage adapters (`MemoryStorage`, `FileSystemStorage`, `OPFSStorage`, etc.) in `tests/storage-adapters.test.ts`.
- Improved OPFS storage mocking and test coverage for browser and Node.js environments.
- Introduced environment detection tests to ensure correct storage adapter selection.
- Created `STORAGE_TESTING.md` to document storage architecture, test coverage, and guidelines for further improvements.

Purpose: Modernize testing infrastructure and enhance storage system reliability through better test coverage and documentation.
2025-07-21 12:47:20 -07:00
1127115664 feat(storage): implement base, file system, and memory storage adapters
- Added `BaseStorage` abstract class to provide common functionality for storage adapters.
- Implemented `FileSystemStorage` adapter for Node.js environments, supporting persistent file-based storage.
- Added directory structure management methods to `FileSystemStorage` (`ensureDirectoryExists`, `clear`, etc.).
- Implemented `MemoryStorage` adapter for in-memory storage suitable for non-persistent environments.
- Supported CRUD operations for nouns, verbs, and metadata in both `FileSystemStorage` and `MemoryStorage`.
- Included utility methods like `mapToObject` for serialization and deserialization of complex data structures.

Purpose: Provide extensible, reusable storage solutions with both persistent and non-persistent options for diverse application needs.
2025-07-21 12:46:41 -07:00
398c120757 feat(docs): add WebSocket augmentation examples in README
- Documented various WebSocket augmentation types (`IWebSocketSupport`, `IWebSocketSenseAugmentation`, etc.) to guide developers in extending augmentations with WebSocket capabilities.
- Added code example showcasing the creation of a WebSocket-enabled sense augmentation (`mySenseAug`) using `addWebSocketSupport`.
- Explained the purpose of combining base augmentation interfaces with `IWebSocketSupport` for type safety and autocompletion.

Purpose: Enhance developer documentation by providing clear guidance and examples for integrating WebSocket capabilities into augmentations.
2025-07-18 15:38:42 -07:00
7c827b81a5 chore(release): bump version to 0.14.0
- Updated `VERSION` in `version.ts` to `0.14.0`.
- Updated `npm` badge in `README.md` to reflect version `0.14.0`.
- Updated `version` field and dependency reference in `cli-package/package.json` to `0.14.0`.

Purpose: Prepare for release by synchronizing version across source files and documentation.
2025-07-18 12:01:54 -07:00
8e58c8d1cc 0.14.0 2025-07-18 12:01:38 -07:00
e9aaec89d8 Feat: enhance cli.ts with updated typings and improved search interface
- Introduced `SearchResult` interface to standardize search result handling and improve code readability.
- Added TypeScript type annotations for command arguments and options in CLI methods to enforce stricter type safety.
- Updated `.version()` for CLI to align with best practices by removing redundant description parameter.
- Enhanced search logic with default parameter handling for limits and improved output formatting for results.
- Adjusted `tsconfig.json` to disable `noImplicitAny` while retaining strict typing practices.
- Streamlined CLI processes by parsing command-line arguments explicitly with `program.parse(process.argv)`.

Purpose: Improve developer productivity with better type safety, clearer interfaces, and refined CLI functionality.
2025-07-18 12:00:50 -07:00
3fe2a6e7f0 Fix: prevent duplication of ROOT_DIR in file system storage initialization
- Added a check to avoid appending `ROOT_DIR` if the `rootDir` already ends with it.
- Ensures proper directory paths setup without redundant path segments.
2025-07-18 10:59:14 -07:00
e7dcedae60 Fix: handle optional loggingConfig in getDefaultEmbeddingFunction initialization 2025-07-18 10:46:05 -07:00
22ccd5a162 Bump version to 0.13.0 2025-07-18 10:41:36 -07:00
b16b9caccb 0.13.0 2025-07-18 10:41:24 -07:00
d3e6dbd898 - Add logging configuration to BrainyData for better control over verbose output.
- Refactor embedding functions to support customizable verbosity through new helper methods (`getDefaultEmbeddingFunction`, `getDefaultBatchEmbeddingFunction`).
- Ensure metadata initialization with default values when null during search results.
2025-07-18 10:40:37 -07:00
51892e46b8 **refactor(core): remove verbose logging for Universal Sentence Encoder**
- **Logging Cleanup**:
  - Removed redundant `console.log` statements in `brainyData.ts` and `embedding.ts` related to Universal Sentence Encoder initialization and load function detection.
  - Replaced detailed logs with concise comments to streamline debugging and reduce noisy outputs.

- **Purpose**:
  - Improves code readability, reduces runtime logging noise, and aligns logging verbosity with the project's streamlined debugging practices.
2025-07-17 10:12:15 -07:00
e12ecf8d72 **feat(core): enhance logging, storage options, and testing coverage**
- **Core Improvements**:
  - Refactored logging functions into a unified `logger` method for consistent output across the library.
  - Enabled the `forceMemoryStorage` option in `BrainyData` initialization for improved storage flexibility in tests and specific use cases.

- **TensorFlow.js and Environment Updates**:
  - Clarified the dependency structure in `README.md` to emphasize bundled dependencies and remove legacy peer dependency instructions.
  - Simplified and reformatted environment detection logic for better maintainability and readability.

- **Testing Enhancements**:
  - Added `tests/package-size-limit.test.ts` to monitor and validate npm package size against defined thresholds.
  - Updated `tests/environment.node.test.ts` and core tests to leverage `forceMemoryStorage` for better test setup standardization.
  - Improved test isolation with expanded `globalThis` utility definitions and cleanup logic.

- **Documentation**:
  - Added detailed best practices for debugging and organizing tests in `DEVELOPERS.md`.
  - Removed outdated installation hints from `package.json` and streamlined scripts by including `test:size` for package size validation.

**Purpose**: These changes unify core logging mechanisms, expand configurability of storage options, and improve testing reliability and coverage. Documentation and clarity are enhanced to align with updated functionality and best practices.
2025-07-17 10:00:28 -07:00
7878f200fc **docs: restructure CLI usage details and update scripts for clarity**
- **CLI Documentation Updates**:
  - Updated `README.md` to reflect the separation of CLI functionality into a new package: `@soulcraft/brainy-cli`.
  - Replaced inline CLI imports with instructions for installing and using `@soulcraft/brainy-cli`.
  - Clarified notes on keeping the main package lightweight by decoupling CLI functionality.

- **Script and Command Adjustments**:
  - Modified build instructions in `README.demo.md` to use `npm run build && npm run build:browser`.
  - Updated demo scripts in `package.json` to point to `/demo/index.html` instead of `/index.html`.
  - Revised style-check script in `CONTRIBUTING.md` to use `npm run check:style`.

- **Issues and Contribution Guidelines**:
  - Improved issue reporting section in `DEVELOPERS.md` with clearer guidelines and examples for bug and feature requests.

**Purpose**: These changes enhance documentation accuracy, streamline developer guidance, and ensure commands/scripts are up-to-date with current usage patterns.
2025-07-17 07:53:41 -07:00
a1d564ed64 **chore(deps): update package-lock.json to reflect @soulcraft/brainy 0.12.0**
- Updated `version` of `@soulcraft/brainy` from `0.11.0` to `0.12.0` in `cli-package/package-lock.json`.
- Adjusted resolved package metadata (e.g., `integrity` values) to match the new release version.

**Purpose**: Ensures `package-lock.json` reflects the updated dependency version for consistency with the 0.12.0 release.
2025-07-16 13:52:54 -07:00
e3567ed838 **chore(release): bump version to 0.12.0**
- Updated the version in `README.md`, `package.json`, and `version.ts` to `0.12.0` to reflect the new release.
- Adjusted dependency reference for `@soulcraft/brainy` in `cli-package/package.json` to use version `0.12.0`.

**Purpose**: Prepares for the 0.12.0 release, ensuring all version references are consistent across documentation and configuration files.
2025-07-16 13:51:56 -07:00
491d1c1b89 0.12.0 2025-07-16 13:51:37 -07:00
3ec183dab6 **feat(core): enhance vector handling, model loading, and compatibility**
- **Vector Handling Updates**:
  - Added a `dimensions` property to `BrainyDataConfig` for specifying vector dimensions.
  - Introduced validation for vector dimensions during database creation and insertion to ensure consistency.
  - Enhanced error handling and logging for dimension mismatches.

- **Model Loading Improvements**:
  - Implemented retry logic for Universal Sentence Encoder model loading to handle network instability and JSON parsing errors gracefully.
  - Improved logging and debugging support for failures during model initialization and embedding operations.

- **Compatibility Enhancements**:
  - Updated polyfills to support TensorFlow.js compatibility across diverse server environments (Node.js, serverless, etc.).
  - Introduced and refactored global `TextEncoder`/`TextDecoder` definitions for seamless operation in non-browser environments.
  - Simplified TensorFlow.js backend setup with streamlined imports and logging for GPU/WebGL fallback.

- **Purpose**:
  - These updates improve BrainyData's robustness, enforce correct vector usage, and extend compatibility with varied runtime environments. The changes enhance the usability, reliability, and cross-platform readiness of core functionalities.
2025-07-16 13:51:00 -07:00
ad4af27385 **test(tests): improve isolation and enhance test configuration**
- **Test Enhancements**:
  - Refactored test setup in `core.test.ts` for better isolation and clarity:
    - Added explicit `.clear()` calls to ensure clean state between tests.
    - Replaced old vector addition logic with simplified data insertion methods.
    - Updated search operations to reflect current functionality and debug-friendly output.
  - Introduced the `@vitest-environment jsdom` annotation in `environment.browser.test.ts` for accurate browser environment emulation.

- **Configuration Updates**:
  - Enhanced `vitest.config.ts`:
    - Introduced custom `reporters` for cleaner and focused test result presentation.
    - Expanded console log filtering with additional patterns for reducing noise from TensorFlow.js and setup processes.

- **Purpose**:
  - These updates improve test clarity, consistency, and robustness while streamlining the configuration to minimize distractions in test outputs.
2025-07-16 13:08:41 -07:00
238831af23 **test(vitest): enhance test config with environment defaults and improved readability**
- **Configuration Updates**:
  - Set default test environment to `node` for consistency.
  - Reduced noise in test outputs by configuring options such as `silent`, `bail`, `hideSkippedTests`, `printConsoleTrace`, and `onConsoleLog`.
  - Disabled test coverage reports by default for reduced verbosity.
  - Added functionality to filter out noisy console logs more aggressively.

- **Purpose**:
  - Improves the clarity and readability of test output, reduces unnecessary verbosity, and ensures consistent behavior in a `node` environment. Encourages focus on debugging failed tests by hiding irrelevant details.
2025-07-16 11:40:42 -07:00
77edae17c7 **chore: update dependencies in package-lock.json**
- **Added Dependencies**:
  - Introduced `@vitest/coverage-v8` for enhanced test coverage reporting.
  - Added various dev dependencies such as `@ampproject/remapping`, `@babel/parser`, `@babel/types`, and `ast-v8-to-istanbul` to support improved source mapping and code coverage analysis.
  - Included modules such as `html-escaper`, `path-scurry`, and `istanbul-lib-coverage` to align with updated testing and utility requirements.

- **Purpose**:
  - This update ensures compatibility with modern testing tools, facilitates advanced debugging, and supports enhanced test coverage capabilities. It also updates metadata for package resolutions.
2025-07-16 11:40:24 -07:00
5958502cf3 **test(tests): enhance test clarity, isolation, and robustness**
- **Test Improvements**:
  - Introduced data-clearing steps (`.clear()`) across critical test cases for ensuring better test isolation and preventing state leakage.
  - Extended support for overriding global utilities (`testUtils`) and added fallback behaviors for test vector creation.

- **Configuration Updates**:
  - Added support for `distanceFunction` as an alternative to `metric` in vector operations for consistency.
  - Adjusted and unified asynchronous `timeout` handling across test suites for predictability.

- **Purpose**:
  - These updates improve reliability, maintainability, and clarity in test cases while ensuring compatibility across diverse test environments.
2025-07-16 11:39:53 -07:00
8ffc7115a5 **test(tests): add comprehensive test suite for Brainy functionality**
- **New Tests Added**:
  - Introduced multiple test suites covering core functionalities (`core.test.ts`), vector operations (`vector-operations.test.ts`), Node.js environment (`environment.node.test.ts`), browser setup (`environment.browser.test.ts`), and TensorFlow.js-specific behaviors (`tensorflow-patch.test.ts`).
  - Added performance, scalability, and error-handling tests to ensure robust validation of vector addition, search, and text embedding functionalities.
  - Introduced setup utilities (`tests/setup.ts`) and standardized test utilities for creating predictable test cases.

- **Configuration**:
  - Created `vitest.config.ts` for custom test configurations, including support for modern test environments (`jsdom`, `happy-dom`) and extended timeouts for asynchronous operations.

- **Validation**:
  - Includes compatibility checks for TensorFlow.js imports and ensures proper handling of `TextEncoder`/`TextDecoder` in Node.js environments.

This commit significantly enhances the testing coverage and structure, ensuring Brainy functionality is robust, cross-platform, and aligned with evolving reliability standards.
2025-07-15 11:56:16 -07:00
6e0045a6f1 **style(cli): update examples with consistent formatting and clean code**
- Removed extraneous semicolons across `cli-wrapper-example.js` for cleaner, consistent code style.
- Adjusted indentation and spacing for improved readability.
- Updated console statements to be consistent, ensuring uniform logging behavior across the example.

This change aligns the example file with the project's coding standards, improving code clarity and maintainability.
2025-07-15 11:53:42 -07:00
d7150dbc30 **chore: streamline documentation, refine shims, and update dependencies**
- **Documentation Updates**:
  - Simplified server functionality details in `README.md`, removing cloud-specific deployment sections and focusing on core features for broader usability.

- **Shim Enhancements**:
  - Improved `util` shim in `rollup.config.js` to include `TextEncoder`/`TextDecoder` support and enhanced `types` checks (e.g., `isFloat32Array`, `isUint8Array`).

- **Dependency Updates**:
  - Added new dev dependencies (`@vitest/ui`, `jsdom`, `happy-dom`).
  - Updated `package-lock.json` with additional dependency resolutions and metadata for better compatibility and maintainability.

This commit aligns documentation with current project focus, enhances cross-platform support via refined shims, and ensures updated dependencies for development and testing environments.
2025-07-15 11:53:26 -07:00
8460865398 **refactor(cli): remove obsolete command and streamline TextEncoder/TextDecoder usage**
- Removed the `test-tensorflow-textencoder` command from `cli.ts` as part of deprecating redundant tests and unused CLI functionality.
- Simplified `TextEncoder` and `TextDecoder` definitions in `brainy-wrapper.js` by replacing direct constructor usage with shorthand properties within a utility object.

This refactor reduces unnecessary complexity in CLI commands and improves maintainability by aligning with current project goals and streamlined test structure.
2025-07-15 11:52:54 -07:00
e863f652e5 **docs: update README to streamline server functionality documentation**
- Simplified explanation of server functionality (`WebSocket` and `REST`) to emphasize its exclusion from the main Brainy package for maintaining lightweight browser bundles.
- Removed detailed Node.js-specific setup examples, configuration options, and cloud-wrapper deployment instructions.
- Retained relevant core functionality usage details for broader accessibility.

This update aligns the documentation with recent repository changes, focusing on clarity, maintainability, and providing guidance only on actively supported features.
2025-07-15 11:51:27 -07:00
3c7846b79d **chore: remove comprehensive test scripts and related documentation**
- Removed the `scripts/comprehensive-test.js` script and its auxiliary files (`node-test.js`, `TENSORFLOW_NODEJS.md`, and `scripts/test-cli-locally.js`).
- These files encompassed unified testing across environments (Browser, Node.js, and CLI) and TensorFlow.js compatibility.
- Reflects a strategic decision to deprecate integrated testing workflow in favor of modular testing approaches and project simplification.

This cleanup aligns with the ongoing effort to streamline the repository and remove redundant or outdated test infrastructure.
2025-07-15 11:50:37 -07:00
ec162e15b2 **chore: remove deprecated Brainy Cloud Wrapper services and deployment scripts**
- Removed entire `cloud-wrapper` directory and its contents, including:
  - Obsolete deployment scripts: `deploy-aws.js`, `deploy-cloudflare.js`, `deploy-gcp.js`.
  - Related service implementations: `brainyService.ts`, `mcpService.ts`, and `index.ts`.
  - Legacy health-check endpoints, WebSocket handlers, and MCP service initialization.
- The removed code handled cloud-specific deployment and configuration for Brainy services, which is no longer relevant.

This cleanup removes unsupported and outdated code, improving repository maintainability and aligning it with current project goals.
2025-07-15 11:49:48 -07:00
19ed3dd081 **refactor(tests): consolidate and replace outdated environment test scripts**
- Removed obsolete scripts: `test-all-environments.js`, `test-fallback-function.js`, `test-fallback-simple.js`, `test-fix.js`, `test-tensorflow-textencoder.js`, `test-unified-encoding.js`, and `test-worker-utils.js`.
- Introduced `scripts/comprehensive-test.js` as a unified testing script covering all environments: Browser, Node.js, and CLI.
- Added `examples/cli-wrapper-example.js` to demonstrate a proper CLI implementation with TensorFlow.js initialization.

This refactor simplifies the testing structure by consolidating redundant scripts into a single comprehensive script while ensuring robust cross-environment coverage.
2025-07-14 11:12:51 -07:00
fe1f418bf9 chore(deps): update package-lock dependency versions to 0.11.0
- Updated `@soulcraft/brainy` dependency version to `0.11.0` in `cli-package/package-lock.json`.
- Adjusted resolved version, integrity hash, and related metadata for `@soulcraft/brainy` to reflect the `0.11.0` release.
- Synced CLI package lock file version with the latest release for consistency and reliability.

This ensures alignment with the updated dependency versions across the project.
2025-07-11 12:17:15 -07:00
af41232b8e **chore(release): bump version to 0.11.0**
- Updated version to `0.11.0` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.11.0` in the CLI package for consistency.
- Updated npm version badge in `README.md` to reflect the new version.

This release ensures consistent versioning across the project and prepares for the distribution of changes in version `0.11.0`.
2025-07-11 12:15:39 -07:00
c68515dc92 0.11.0 2025-07-11 12:15:28 -07:00
bcd75b4b61 **feat(patch): enhance TextEncoder/TextDecoder compatibility for TensorFlow.js**
- Refactored `applyTensorFlowPatch` in `textEncoding.ts` to introduce a unified `Platform` class supporting both Node.js and browser environments with native `TextEncoder`/`TextDecoder`.
- Modified global object handling to target `PlatformNode` in Node.js and `PlatformBrowser` in browser environments.
- Added `getTextEncoder` and `getTextDecoder` utility functions to simplify text encoding/decoding across platforms.
- Introduced `setup.ts` to apply environment patches before other modules load.
- Updated CLI entry points (`cli.ts`, `rollup.config.js`) to ensure patching precedes TensorFlow.js usage.
- Enhanced test coverage for TextEncoder compatibility with `test-fix.js`.
- Adjusted imports in `test-tensorflow-textencoder.ts` to align with the updated `./utils/textEncoding.js`.
- Streamlined constructor definitions in `Platform` for improved maintainability.

This update ensures robust compatibility for TensorFlow.js by patching and standardizing text encoding/decoding functionality across environments.
2025-07-11 12:15:11 -07:00
f0db5b471f **feat(tests): add tests for TextEncoder, TensorFlow.js, and fallback mechanisms**
- Introduced `test-fallback-function.js` and `test-fallback-simple.js` to validate `executeInThread` fallback functionality with both named and anonymous compute-intensive functions.
- Added `test-tensorflow-textencoder.js` for TensorFlow.js and TextEncoder tests in a Node.js environment.
- Created `test-tensorflow-textencoder.html` for browser-based TensorFlow.js and TextEncoder tests.
- Implemented cross-environment test support in `cli-package/src/test-tensorflow-textencoder.ts` for CLI functionality.
- Enhanced `src/utils/embedding.ts`, `textEncoding.ts`, and `brainy-wrapper.js` to include updated global `TextEncoder` and `TextDecoder` utilities for compatibility and worker improvements.
- Standardized and expanded utility methods in `PlatformNode` for broader support, including `isFloat32Array` and `isTypedArray` checks.
- Updated Node.js requirement to `>= 24.4.0` across documentation and configuration files for compatibility improvements.

This update introduces comprehensive testing for fallback mechanisms, TensorFlow.js, and TextEncoder across multiple environments, ensuring robustness and compatibility.
2025-07-11 11:11:56 -07:00
00039f836f **chore(release): bump version to 0.10.0 and refactor project structure**
- Updated version to `0.10.0` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Removed `CHANGELOG.md` from the root and `cli-package`, as GitHub auto-generates release notes.
- Refactored `brainy-wrapper.js` to simplify utility methods (`isFloat32Array` and `isTypedArray`) by moving them to instance-level definitions.
- Standardized Node.js version requirement to `>= 24.3.0` across documentation and configuration files.
- Improved `textEncoding.ts` by introducing a unified `Platform` class for cross-environment compatibility (Node.js and browser).
- Restructured scripts:
  - Replaced outdated commands (e.g., `test-cli` -> `test:cli` and `test-all` -> `test:all`) for consistency.
  - Removed changelog updates from `scripts/create-github-release.js` as part of simplification.
- Enhanced `patch-textencoder.js` to also patch `worker.js` for both `TextEncoder` and `TextDecoder`.

This release improves compatibility with Node.js 24, simplifies the deployment/changelog process, and refines text encoding and worker functionalities.
2025-07-07 10:19:04 -07:00
1a88aecdb6 0.10.0 2025-07-07 09:25:22 -07:00
4d5534177a I need the diff information to generate an appropriate commit message. Could you please provide the relevant code diff? Thank you! 2025-07-07 09:25:19 -07:00
d30344a8e2 chore(version): bump version to 0.9.37 and update references
- Updated version to `0.9.37` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.9.37` in the CLI package for consistency.
- Updated npm version badge in `README.md` to reflect the new version.
- Added release details for version `0.9.37` in `CHANGELOG.md`.

This update ensures consistent versioning across the project and documents the latest release.
2025-07-07 09:25:03 -07:00
1d1c10d287 0.9.37 2025-07-04 14:42:41 -07:00
da760a34ed **feat(cli, workers): introduce text encoding patches and worker improvements**
- Added `cli-package/brainy-wrapper.js` to patch global `TextEncoder` and `TextDecoder` for Node.js environments, ensuring compatibility with TensorFlow.js.
- Implemented unified text encoding utilities in `cli-package/src/utils/textEncoding.ts` for cross-environment consistency.
- Enhanced `src/worker.js` and introduced `src/worker.ts` to improve worker execution with better function serialization and error handling.
- Updated `package.json`:
  - Modified the `build` script to include a patch for `TextEncoder`.
  - Added `test-all` script for multi-environment testing.
  - Introduced the Puppeteer dependency for browser testing.
- Created a favicon generation script `scripts/create-favicon.js` using a base64-encoded icon.
- Added `scripts/test-all-environments.js` to run automated tests across Node.js, browser, and CLI environments.
- Enhanced `src/utils/workerUtils.ts` to support improved fallback mechanisms and robust worker pooling.

This update improves the project's compatibility across environments, refines worker functionalities, and adds comprehensive testing support for reliability.
2025-07-04 14:42:33 -07:00
9293328e72 **chore(deploy): remove GitHub release automation from deploy:cli script**
- Updated `package.json` to modify the `deploy:cli` script by removing the call to `scripts/create-github-release.js`.
- Simplified the deployment process for the CLI package by decoupling GitHub release creation.

This change aims to streamline the CLI deployment workflow, allowing more flexibility in managing GitHub releases.
2025-07-04 12:38:00 -07:00
0c334df1bc **chore(version): bump version to 0.9.36 and update references**
- Updated version to `0.9.36` in `README.md`, `cli-package/package.json`, and `src/utils/version.ts`.
- Synced `@soulcraft/brainy` dependency version to `0.9.36` in the CLI package for consistency.
- Updated npm version badge in `README.md` to reflect the new version.
- Added release details for version `0.9.36` in `CHANGELOG.md`.

This update ensures consistent versioning across the project and documents the latest release.
2025-07-04 12:33:28 -07:00
ac97ad232a 0.9.36 2025-07-04 12:32:24 -07:00