- Updated version to `0.9.30` in `package.json` and `cli-package/package.json`.
- Synchronized `@soulcraft/brainy` dependency version to `0.9.30` in the CLI package for consistency.
- Updated repository URL format to use `git+https` for both `package.json` files.
This update ensures consistent versioning across the project, maintains alignment between main and CLI package dependencies, and standardizes repository URL formatting.
- Updated version to `0.9.29` in `package.json`, `cli-package/package.json`, `README.md`, and `src/utils/version.ts`.
- Synchronized `@soulcraft/brainy` dependency version to `0.9.29` in CLI package for consistency.
- Updated npm version badge in `README.md` to reflect `0.9.29`.
This update ensures consistent versioning across the project and maintains alignment between main and CLI package dependencies.
- Updated version to `0.9.28` in `package.json`, `cli-package/package.json`, `README.md`, and `src/utils/version.ts`.
- Synchronized `@soulcraft/brainy` dependency version to `0.9.28` in CLI package for consistency.
- Updated npm version badge in `README.md` to reflect `0.9.28`.
This update ensures consistent versioning across the project and maintains alignment between main and CLI package dependencies.
- Updated version to `0.9.27` in `package.json`, `cli-package/package.json`, `README.md`, and `src/utils/version.ts`.
- Synchronized `@soulcraft/brainy` dependency version to `0.9.27` in CLI package for consistency.
- Updated npm version badge in `README.md` to reflect `0.9.27`.
This update ensures accurate versioning across the project and maintains alignment between main and CLI package dependencies.
- Removed outdated Node.js v24 compatibility patches for `TextEncoder` and `TextDecoder` in `cli-wrapper.js` and other modules since TensorFlow.js now supports Node.js v24+ natively.
- Introduced a utility module `src/utils/tensorflowUtils.ts` for TensorFlow.js compatibility, defining global `PlatformNode` and related utilities.
- Enhanced `fileSystemStorage.ts` with improved Node.js module loading mechanisms for better compatibility across environments.
- Simplified dependency requirements by reducing the minimum Node.js version to `>=23.0.0`.
- Updated `package.json`, `cli-package/package.json`, and `README.md` versions to `0.9.25`.
- Harmonized `cli-package` and main package dependencies to ensure version alignment.
- Improved global compatibility with TensorFlow.js in mixed Node.js environments.
This update modernizes TensorFlow.js integration, reduces maintenance efforts, and aligns compatibility with current Node.js and TensorFlow.js capabilities.
- Introduced `scripts/test-cli-locally.js` to streamline local testing of the CLI package before publishing.
- Builds main and CLI packages, creates local tarballs, and installs the CLI package globally for testing.
- Ensures version synchronization between main and CLI packages during testing.
- Updated `cli-package/package.json` version to `0.9.23` and synchronized `@soulcraft/brainy` dependency to `0.9.22`.
- Patched `TextEncoder` fallback for Node.js v24 in `cli-wrapper.js` to ensure overall CLI compatibility.
- Added new `test-cli` npm script to `package.json`.
This update simplifies the CLI local testing process, maintains version alignment, and improves readiness for Node.js v24.
- Introduced `DEVELOPERS.md` with detailed documentation for building, testing, publishing, and contributing to Brainy.
- Updated `README.md` to link to the new developer guide, streamlining the main document structure by removing technical build details.
- Updated npm version badge in `README.md` to `0.9.22`.
- Added a changelog entry to `cli-package/README.md` for version `0.9.23` to document recent CLI updates.
This update improves developer onboarding, centralizes developer resources, and aligns documentation with the latest releases.
- Added a fallback mechanism to ensure `TextEncoder` and `TextDecoder` are available in the `util` module for Node.js v24.
- This fix resolves compatibility issues with TensorFlow.js in Node.js v24 environments.
- Synchronized CLI package version to `0.9.21` and updated `@soulcraft/brainy` dependency reference in `package-lock.json`.
This update ensures smoother functionality in Node.js v24 while maintaining version alignment across dependencies.
- Updated version to `0.9.21` in `README.md`, `package.json`, `cli-package/package.json`, and `src/utils/version.ts`.
- Updated npm version badge in `README.md` to reflect `0.9.21`.
- Synchronized `@soulcraft/brainy` dependency version to `0.9.21` in CLI package for consistency.
This release ensures accurate versioning across the project and aligns dependencies with the latest version.
- Updated version to `0.9.20` across `package.json`, `cli-package/package.json`, `src/utils/version.ts`, and `cli-package/package-lock.json`.
- Updated npm version badge in `README.md` to reflect `0.9.20`.
- Adjusted `package.json` to include additional files in the distribution bundle, such as `dist/unified.js`, `dist/brainy.min.js`, and other key directories.
- Updated `@soulcraft/brainy` dependency to `0.9.20` in CLI package to align dependencies with the latest version.
- Resolved dependency integrity updates in `package-lock.json`.
- Improved dependency management for better version consistency and distribution.
This release ensures up-to-date versioning, improved distribution content management, and enhanced dependency alignment.
- Introduced `package-lock.json` for the `@soulcraft/brainy-cli` package to manage dependencies explicitly.
- Ensures reproducible installs and aligns the CLI with the latest project dependencies.
- Supports dependency resolution, locking versions, and maintaining consistency across development and CI/CD environments.
- Updated version to `0.9.18` in `package.json`, `cli-package/package.json`, and `src/utils/version.ts`.
- Updated npm badge in `README.md` to reflect version `0.9.18`.
- Adjusted `publish-cli.js` to synchronize publishing of the main and CLI packages with enhanced build steps.
- Introduced `tsconfig.json` updates to include type paths (`types.d.ts`) in CLI for better type handling.
- Refined CLI scripts for improved TypeScript annotations and better code structure.
- Removed `@types/omelette` and `omelette` dependencies along with associated CLI configurations to simplify the codebase.
- Updated `.gitignore` to exclude CLI `dist` directory for cleaner repository management.
- Added `deploy:both` npm script for combined publishing of main and CLI packages.
This release ensures version consistency, improves CLI workflows, and enhances type handling while decluttering unused dependencies.
- Deleted the entire `src/cli.ts` file, effectively removing the Brainy CLI component.
- The change streamlines the codebase by eliminating unused and redundant code related to the CLI.
- This refactor supports maintaining a cleaner and more focused project architecture.
- Added a new `@soulcraft/brainy-cli` package to provide a dedicated CLI interface for the Brainy database.
- Implemented a CLI wrapper script (`cli-wrapper.js`) to manage global package execution and version handling.
- Introduced `scripts/publish-cli.js` to automate synchronized publishing of the main package and CLI, ensuring version consistency.
- Created documentation for CLI usage and publishing workflow (`publishing-cli.md`).
- Updated `package.json` to include CLI-related build and deploy scripts.
- Adjusted `README.md` to document the CLI package, usage instructions, and build separation.
This feature introduces a standalone CLI package, improves deployment automation, and enhances documentation to align with the updated architecture.
- Introduced a `prepare` script in `package.json` that runs `build` and `build:cli` before package deployment.
- Ensures that necessary build artifacts are created automatically during the publish process.
This change streamlines the deployment workflow by automating pre-publish preparation tasks.
- Updated `npm` badge in `README.md` to reflect version `0.9.15`.
- Updated `VERSION` constant in `src/utils/version.ts` to `0.9.15`.
These changes ensure version consistency in preparation for the new release.
- Updated `npm` badge in `README.md` to reflect version `0.9.14`.
- Updated `VERSION` constant in `src/utils/version.ts` to `0.9.14`.
- Replaced `build:all` script references in documentation with separate `build` and `build:browser` commands for better clarity.
- Adjusted `demo` script to build both Node.js and browser versions before running the demo.
- Updated prerequisites in `README.demo.md` to align with the new build workflow.
- Refined `package.json` `files` field to clean up package distribution artifacts.
These changes ensure version consistency, clarify build processes, and improve documentation to streamline the developer experience.
- Updated `npm` badge in `README.md` to reflect version `0.9.13`.
- Updated `VERSION` constant in `src/utils/version.ts` to `0.9.13`.
- Refined `rollup.config.js` to conditionally export configurations based on build type (`cli` or `main`).
- Added `build:cli` script in `package.json` for CLI-specific builds.
- Updated `cli` script to include CLI build step for executable generation.
- Adjusted `package.json` `files` field to exclude CLI build artifacts in package distribution.
These changes ensure version consistency, improve CLI build workflows, and align the package distribution with project requirements.
- Added `test-browser-worker.html` to demonstrate threading with Web Workers in browser environments.
- Added `test-fallback.html` to verify fallback functionality when threading is unavailable.
- Created `THREADING.md` to document unified threading implementation, including Node.js Worker Threads, Web Workers, and fallback mechanisms.
- Updated Node.js version requirement in `README.md` and `package.json` to `>=24.0.0` for compatibility with improved Worker Threads API.
- Enhanced `workerUtils.ts` to implement threading with a worker pool for Node.js and added Web Worker execution logic for browsers.
- Enabled environment-aware threading availability in `environment.ts`.
- Updated `rollup.config.js` to include CLI configurations for streamlined builds.
- Adjusted `.gitignore` to exclude test artifacts and package files.
These changes provide comprehensive testing and documentation of threading functionality, improve cross-environment compatibility, and enhance developer workflows.
- Updated sample data in `demo/index.html` to focus on advanced AI, technology, and environmental topics.
- Added detailed personas with updated descriptors in tags and content.
- Enhanced posts to include nuanced and technical insights into AI, robotics, cybersecurity, and more.
- Removed hover text-decoration for `.result-title` for a cleaner UI experience.
- Adjusted highlighting styles for `.highlight` and `.similar-highlight` to eliminate visual clutter.
- Updated input placeholders and help text to reflect AI-related topics like machine learning, computer vision, and robotics.
- Refined hostname detection logic for compatibility with `demo.soulcraft.com`.
- Improved database initialization workflow with asynchronous operations for dropdown population and visualization updates.
These changes elevate demo content quality, refine visual clarity, and improve backend workflows for a robust user experience.
- Introduced a `dry-run` script to simulate `npm pack` actions without creating a package archive.
- Updated the `postinstall` script to adhere to consistent formatting.
These changes improve developer workflows by enabling validation of package contents before publishing and ensuring consistency.
- Updated `npm` badge in `README.md` to reflect version `0.9.12`.
- Updated `VERSION` constant in `src/utils/version.ts` to `0.9.12`.
These changes ensure version consistency across documentation and codebase in preparation for release.
- Updated `importPath` in `demo/index.html` to reference `unified.min.js` instead of `unified.js` for GitHub Pages, CodeSoulcraft, and local development environments.
- Enhanced content and tag information across demo personas and posts to include additional context and perspective-laden descriptors.
- Introduced new details in demo content to highlight advanced concepts and practices related to privacy, sustainability, and accessibility.
These changes improve load performance in the demo environment and enrich demo content for a more comprehensive and compelling user experience.
- Removed several unused and outdated dependencies, including Babel-related packages and test utilities (`jest`, `gh-pages`, `ts-jest`).
- Added `@tensorflow/tfjs-backend
- Refactored function signature to include line breaks for enhanced readability and adherence to style guidelines.
- No functional changes introduced, ensuring consistent behavior.
These adjustments improve code clarity and maintain alignment with project formatting standards.
- Created `scripts/check-code-style.js` to enforce coding standards.
- Includes ESLint, Prettier checks, and custom semicolon rule validation.
- Outputs actionable feedback for style violations.
- Updated `CONTRIBUTING.md` to document new code style workflows and commands.
- Added style commands to `package.json`:
- `lint`, `lint:fix`, `format`, `check-format`, and `check-style`.
- Refactored `demo/index.html` to use `Object.defineProperty` for better global property management and prevent conflicts.
These changes enhance the automation of code quality checks, streamline developer workflows, and improve reliability in global property handling for the demo.
- Eliminated redundant line break to ensure consistent code formatting.
- Aligns the file with project coding standards for better readability and maintainability.
- Updated `findUSELoadFunction` return type for better type safety and clarity.
- Enhanced load function detection logic with improved readability and consistency.
- Applied formatting adjustments, such as line breaks and removal of redundant semicolons, to adhere to coding standards.
These changes ensure stronger type enforcement, align with project style guidelines, and improve maintainability of Universal Sentence Encoder initialization logic.
- Applied consistent formatting improvements, including line breaks, parentheses usage, and object destructuring, to enhance code readability and maintainability.
- Enhanced the fallback mechanism during Universal Sentence Encoder initialization by implementing a retry approach with error handling.
- Refactored `addBatch` processing for both vector and text items to improve clarity and adhere to project coding standards.
- Optimized initialization safeguards with structured retry implementations, ensuring robust error resiliency.
These changes align the codebase with established formatting guidelines and improve the reliability of embedding initialization processes.
- Fixed indentation in the "Custom Domain" section for better readability.
- Updated domain DNS configuration instructions to improve clarity and alignment.
These changes enhance the accuracy and presentation of setup instructions for custom domain configuration.
- Added `demo/CNAME` with domain `demo.soulcraft.com` for the demo environment.
- Added `CNAME` with domain `code.soulcraft.com` for the main codebase.
These changes establish domain configurations for hosting and proper DNS resolution.
- Updated `npm` shield in `README.md` to reflect the new version (v0.9.11).
- Incremented `VERSION` constant in `src/utils/version.ts` to align with the release update.
These changes ensure documentation and source files remain consistent with the latest release version.
- Added batch embedding support with `defaultBatchEmbeddingFunction`, leveraging shared model instances for optimized performance.
- Integrated `isInitializing` flag to prevent recursive initialization and ensure smooth concurrent operation handling during `BrainyData` initialization.
- Pre-loaded Universal Sentence Encoder in `BrainyData` to prevent delays during embedding.
- Introduced fallback mechanisms in embedding initialization for better error resiliency and model reusability.
- Updated `addBatch` with support for batchSize and refactored text/vector processing logic for clearer separation and memory management.
- Improved GPU and CPU backend selection in Universal Sentence Encoder for compatibility across environments.
- Enhanced memory management by cleaning tensors after embedding operations.
- Updated README with instructions for batch embedding, threading updates, and GPU/CPU optimizations.