Commit graph

22 commits

Author SHA1 Message Date
5a16c13ea2 **feat(examples): add redirect page for demo and update live demo links**
### Changes:
- **examples/index.html**:
  - Introduced a new HTML file that redirects users to `demo.html` using both meta tag and JavaScript.
- **README.md**:
  - Updated live demo link to point to the new `examples/` directory and clarified access to both the root directory and `demo.html`.

### Purpose:
Improved user experience by creating a smoother navigation to the demo page and updated documentation to reflect the new entry point of the live demo. Removed redundant `CNAME` file as part of cleanup.
2025-06-20 14:56:04 -07:00
02dd5a20bc **ci(workflows): add GitHub Pages workflow for demo deployment with custom domain**
### Changes:
- Introduced `deploy-demo.yml` workflow in `.github/workflows/` to automate deployment to GitHub Pages:
  - Triggers on `main` branch pushes and manual workflow dispatch.
  - Includes steps for project setup, build, and deployment using `JamesIves/github-pages-deploy-action`.
- Added `examples/CNAME` with custom domain `www.soulcraft.com`.

### Purpose:
Streamlined and automated the deployment of the demo to GitHub Pages, ensuring efficient updates. Configured a custom domain for better branding and accessibility of the live demo.
2025-06-20 14:36:35 -07:00
9051d566f8 **feat(demo): enhance UI/UX & content of interactive demo**
### Changes:
- **Favicon Update**: Replaced the relative favicon path with an absolute URL pointing to the GitHub-hosted file.
- **Header Redesign**: Improved header layout with a more modern and aligned flexbox structure. Adjusted logo size and added a left-aligned text section.
- **Styling Enhancements**:
  - Introduced new styles for zoom controls, Google-like search results, and result clusters.
  - Updated padding, alignment, and hover states for buttons and interactive elements.
  - Refined visual hierarchy in sections with updated margins, sizes, and typography.
- **Added `What Can You Build?` Section**: Highlighted potential use cases for Brainy (e.g., semantic search, recommendation systems, adaptive experiences).
- **Improved Demo Steps**:
  - Refactored interactive demo into guided "steps" for better usability.
  - Added tooltips to clarify button functionality.
  - Updated step titles and descriptions for clarity and conciseness.
- **Code Samples**:
  - Simplified JavaScript import instructions for Node.js and browser environments.
  - Highlighted CDN options for easier library access.
- **Advanced Features & New Controls**:
  - Introduced new backup, restore, and additional operation buttons for database management.
  - Added zoom-in, zoom-out, and zoom-to-fit controls for visualizations.
  - Enhanced semantic search with dynamic filtering and guidance for queries.

### Purpose:
Updated the interactive demo to improve its usability, visual appeal, and feature coverage. These enhancements make the demo more user-friendly and better illustrate Brainy's capabilities, aiding developers in exploring and understanding the platform.
2025-06-20 13:49:59 -07:00
910f55ac3e **feat: add examples demonstrating simplified augmentations and streamlined pipelines**
### Changes:
- Introduced a new `examples/simplified-augmentations.js` file showcasing comprehensive usage examples:
  - Example 1: Creating and using a simple memory augmentation.
  - Example 2: Adding WebSocket support to a conduit augmentation.
  - Example 3: Processing static data through a reusable pipeline.
  - Example 4: Setting up and executing streaming data pipelines.
  - Example 5: Dynamically loading augmentations from a module.
- Demonstrated augmentation factories, streamlined pipelines, dynamic loading, and reusable workflows through practical scenarios.

### Purpose:
Added detailed examples to assist developers in understanding and implementing augmentation factories and streamlined pipelines. These examples provide a hands-on reference for building static and streaming workflows, improving usability and accessibility for new and existing users.
2025-06-20 12:04:07 -07:00
2433acb1f1 **feat: update terminology from 'restore' to 'import' for sparse data operations**
### Changes:
- Updated button label in `examples/demo.html` from "Restore Sparse Data" to "Import Sparse Data".
- Replaced references to `restoreSparseData` with `importSparseData` across code:
  - Event listener for the sparse data button now uses `importSparseData`.
  - Function name changed to `importSparseData` to reflect new terminology.
  - Logging messages updated for consistency ("restored" -> "imported").
- Modified the database operation to use `importSparseData` for better alignment with the updated terminology.

### Purpose:
Improved clarity and consistency in terminology related to sparse data operations. The term "import" better aligns with its functionality and enhances user understanding across the application.
2025-06-20 10:57:11 -07:00
755b1a6fc1 **feat: add browser-compatible exports and define BrainyData interface**
### Changes:
- Created `examples/browser_compatible_exports.ts`:
  - Introduced browser-friendly exports with polyfill for `Buffer` in browser environments.
  - Implemented shims for Node.js modules (`fs`, `util`, and `path`) to avoid compatibility issues.
  - Exported browser-compatible types and utilities: `BrainyData`, `NounType`, `VerbType`, graph types, core types, distance functions, embedding utilities, and storage adapters.
  - Explicitly excluded Node.js/CLI-specific parts to focus on browser compatibility.
- Added `src/types/brainyDataInterface.ts`:
  - Defined `BrainyDataInterface` to break the circular dependency between `brainyData.ts` and `serverSearchAugmentations.ts`.
  - Provided methods for managing nodes, relationships, initialization, search, and adding vector data with metadata.

### Purpose:
- Enhanced the codebase to support browser environments by introducing browser-specific exports and avoiding Node.js dependencies.
- Established clearer separation of concerns and modularity by introducing the `BrainyDataInterface` for dependency management, improving maintainability and flexibility.
2025-06-19 15:00:41 -07:00
cfe1fd9e22 **feat: refine README and enhance embedding workflows**
### Changes:
- Updated README.md:
  - Refined the project description to highlight its lightweight and powerful nature.
  - Enhanced feature list, replacing outdated entries with modern updates (e.g., TensorFlow integration replacing LLM creation).
  - Included detailed installation and usage instructions for TensorFlow.js support and embedding workflows.
  - Added "Usage Options" section to define different import methods and supported environments.
  - Expanded "Backup and Restore" details, showcasing CLI and scripting examples.
  - Introduced optimized HNSW indexing for large datasets.
  - Replaced examples with a unified and simplified demonstration approach.
  - Embedded advanced build and environment-specific configurations for better clarity.
- Removed outdated content related to language model generation, including LLM-related commands and examples.
- Added README.demo.md with full instructions for running the interactive demo.

### Purpose:
This update modernizes the documentation and focuses on Brainy’s current capabilities, simplifying onboarding for new users while removing deprecated features. It also streamlines project understanding, enabling developers to better utilize its features in diverse environments.
2025-06-19 15:00:08 -07:00
6cedde94b0 remove: outdated examples from the examples directory
### Changes:
- Deleted the following outdated example files from the `examples` directory:
  - `buildTimeRegistration.js`
  - `conduitAugmentationExample.js`
  - `configurationTest.js`
  - `dataInspectionExample.js`
  - `import-graphTypes.js`
  - `browser-server-search/index.html`

### Purpose:
These example files were removed as they were no longer relevant or up-to-date with the current state of the project. This cleanup ensures that users referencing examples have access to accurate and relevant documentation and code, reducing potential confusion.
2025-06-18 11:20:47 -07:00
0b7b3f947b chore: update README.md and docs with Brainy logo and enhanced formatting
Standardized documentation by adding a centered Brainy logo across README files, examples, and guides. Adjusted text formatting for consistency, improved alignment, and readability of feature descriptions and examples.
2025-06-11 08:49:30 -07:00
7f95844434 docs: add comprehensive documentation and examples for LLM augmentation
Introduced `llm-augmentation.md`, detailing the creation, training, testing, exporting, and deployment of language models using Brainy's graph database. Added examples showcasing practical usage and pipeline integration. Included class implementations in `llmAugmentations.ts`.
2025-06-10 11:15:22 -07:00
a206b9926d feat: add browser-server search example with server search augmentations 2025-06-06 10:48:10 -07:00
1635cc229c feat: add WebSocket and WebRTC conduit augmentations with examples
Implemented WebSocketConduitAugmentation and WebRTCConduitAugmentation for syncing Brainy instances. Added comprehensive usage examples to showcase data synchronization via WebSocket and WebRTC.
2025-06-06 08:49:25 -07:00
cdbd2a9db4 feat: introduce CLI for Brainy and enhance type validation
Added a comprehensive command-line interface (CLI) for interacting with the Brainy vector database. The CLI supports various operations, including database initialization, adding/searching nouns, managing relationships, and querying database status. Enhanced type validation logic for nouns and verbs to ensure consistency and enforce default types for invalid inputs. Updated test scripts to verify type validation and edge cases.
2025-06-05 11:18:20 -07:00
9e10caf604 feat: add examples for read-only mode, sequential pipeline, and configuration tests
Added illustrative example scripts to demonstrate read-only mode functionality, sequential pipeline processing, and automatic configuration detection.
2025-06-04 10:01:03 -07:00
18bbe6d428 chore: remove Firestore-related implementations and example files
Deleted all Firestore augmentation, storage, sync implementations, and related type definitions. Removed the FirestoreSync example file as part of the cleanup for disabled Firestore functionality.
2025-06-02 17:03:53 -07:00
725610fbe4 feat: add Firestore vector search integration and noun type-based search enhancements
Introduced Firestore vector search integration using `@firebase/firestore-vector-search`. Added support for restricting searches by specific noun types to optimize performance and relevance. Updated `README.md` to document the new functionality and usage examples.
2025-06-02 12:23:11 -07:00
95a72f4181 chore: reformat code in README.md for improved readability
Applied consistent indentation and line-breaking rules to code and text sections in `README.md`, ensuring better formatting and alignment for readability. No functional changes made.
2025-05-29 10:29:52 -07:00
203b669203 chore: remove examples/externalPlugins.js and pluginLoader.ts, update imports to .js
Deleted `examples/externalPlugins.js` and `pluginLoader.ts` as they are no longer used. Updated all `.ts` imports to `.js` across the codebase. Added `MemberOf` to `VerbType` and filtered disabled augmentations in `executeAugmentationPipeline`. Updated documentation to reflect new augmentation registration process. Removed deprecated `allowImportingTsExtensions` from `tsconfig.json`.
2025-05-29 09:52:30 -07:00
b031a40b1c feat: add external plugin loader and examples for Brainy
Introduced `pluginLoader.ts` to enable loading and configuring augmentation plugins from external packages. Added `examples/externalPlugins.js` to demonstrate usage. Enhanced storage status reporting in `opfsStorage` and `BrainyData` with detailed storage capacity and usage methods. Updated README with an external plugin usage guide.
2025-05-28 15:39:14 -07:00
be0cd47f21 docs: add import-graphTypes.js example file to demonstrate selective graphTypes imports
Added a new example file `import-graphTypes.js` to showcase how to selectively import the `graphTypes` module, highlighting usage of `GraphNoun`, `GraphVerb`, `NounType`, and `VerbType`.
2025-05-28 10:19:26 -07:00
7638506ffa Update package scope to @soulcraft and configure as private
Changed package name and imports to use the @soulcraft scope. Updated `README.md` to reflect the use of a private npm package and added publishing/installing instructions. Configured `package.json` with `private: true` and restricted access for publishing. Updated demo link to the correct GitHub repository.
2025-05-23 11:08:02 -07:00
49480e694c Initial commit of Brainy vector database v0.1.0 2025-05-23 10:55:20 -07:00