🧠 Zero-Configuration AI Database with Triple Intelligence™ https://soulcraft.com
Find a file
David Snelling 7c46879334 chore(release): 2.14.1
- Fix verb retrieval in FileSystemStorage adapter
- Add safety warnings for large datasets
- Document performance considerations for count methods
2025-09-02 14:56:16 -07:00
bin feat: add Universal Display Augmentation for AI-powered enhanced output 2025-08-28 12:37:07 -07:00
docs feat: implement comprehensive type safety system with BrainyTypes API 2025-09-01 09:37:36 -07:00
examples feat: implement comprehensive type safety system with BrainyTypes API 2025-09-01 09:37:36 -07:00
models-cache/Xenova/all-MiniLM-L6-v2 🧠 Brainy 2.0.0 - Zero-Configuration AI Database with Triple Intelligence™ 2025-08-26 12:32:21 -07:00
scripts feat: add optional Q8 quantized model support 2025-08-29 11:09:40 -07:00
src chore(release): 2.14.1 2025-09-02 14:56:16 -07:00
tests feat: implement comprehensive neural clustering system 2025-09-01 15:37:56 -07:00
.gitignore chore: move internal planning documents to private .strategy folder 2025-08-30 08:53:51 -07:00
.npmignore chore: Add .npmignore to exclude models from npm package 2025-08-26 13:37:44 -07:00
.nvmrc feat: update Node.js requirements to 22 LTS for ONNX compatibility 2025-08-28 16:05:14 -07:00
.versionrc.json feat: automated release workflow with conventional commits 2025-08-27 12:19:32 -07:00
API_SURFACE_DESIGN.md feat: implement clean embedding architecture with Q8/FP32 precision control 2025-09-02 10:00:52 -07:00
AUGMENTATION_SAFETY.md feat: comprehensive metadata namespace architecture and cleanup system 2025-08-27 15:38:48 -07:00
brainy.png 🧠 Brainy 2.0.0 - Zero-Configuration AI Database with Triple Intelligence™ 2025-08-26 12:32:21 -07:00
CHANGELOG.md chore(release): 2.14.0 2025-09-02 10:01:48 -07:00
CLUSTERING_ALGORITHMS_ANALYSIS.md feat: implement clean embedding architecture with Q8/FP32 precision control 2025-09-02 10:00:52 -07:00
COMPREHENSIVE_API_OVERVIEW.md feat: implement clean embedding architecture with Q8/FP32 precision control 2025-09-02 10:00:52 -07:00
CONTRIBUTING.md 🧠 Brainy 2.0.0 - Zero-Configuration AI Database with Triple Intelligence™ 2025-08-26 12:32:21 -07:00
demo-neural-type-inference.js feat: implement comprehensive type safety system with BrainyTypes API 2025-09-01 09:37:36 -07:00
demo-strict-types.js feat: implement comprehensive type safety system with BrainyTypes API 2025-09-01 09:37:36 -07:00
demo-type-enforcement.js feat: implement comprehensive type safety system with BrainyTypes API 2025-09-01 09:37:36 -07:00
LICENSE 🧠 Brainy 2.0.0 - Zero-Configuration AI Database with Triple Intelligence™ 2025-08-26 12:32:21 -07:00
METADATA_ARCHITECTURE.md feat: comprehensive metadata namespace architecture and cleanup system 2025-08-27 15:38:48 -07:00
MIGRATION.md 🧠 Brainy 2.0.0 - Zero-Configuration AI Database with Triple Intelligence™ 2025-08-26 12:32:21 -07:00
package-lock.json chore(release): 2.14.1 2025-09-02 14:56:16 -07:00
package.json chore(release): 2.14.1 2025-09-02 14:56:16 -07:00
PERFORMANCE_ANALYSIS.md feat: comprehensive metadata namespace architecture and cleanup system 2025-08-27 15:38:48 -07:00
README.md feat: implement comprehensive type safety system with BrainyTypes API 2025-09-01 09:37:36 -07:00
RELEASE-GUIDE.md docs: update versioning strategy to be more conservative 2025-08-28 09:00:04 -07:00
tsconfig.json 🧠 Brainy 2.0.0 - Zero-Configuration AI Database with Triple Intelligence™ 2025-08-26 12:32:21 -07:00
use-node-22.sh feat: implement clean embedding architecture with Q8/FP32 precision control 2025-09-02 10:00:52 -07:00
vitest.config.memory.ts 🧠 Brainy 2.0.0 - Zero-Configuration AI Database with Triple Intelligence™ 2025-08-26 12:32:21 -07:00
vitest.config.ts 🧠 Brainy 2.0.0 - Zero-Configuration AI Database with Triple Intelligence™ 2025-08-26 12:32:21 -07:00

Brainy

Brainy Logo

npm version npm downloads MIT License TypeScript

🧠 Brainy 2.0 - The Universal Knowledge Protocol™

World's first Triple Intelligence™ database—unifying vector similarity, graph relationships, and document filtering in one magical API. Model ANY data from ANY domain using 31 standardized noun types × 40 verb types.

Why Brainy Leads: We're the first to solve the impossible—combining three different database paradigms (vector, graph, document) into one unified query interface. This breakthrough enables us to be the Universal Knowledge Protocol where all tools, augmentations, and AI models speak the same language.

Build once, integrate everywhere. O(log n) performance, 3ms search latency, 24MB memory footprint.

🎉 What's New in 2.0

  • World's First Triple Intelligence™: Unified vector + graph + document in ONE query
  • Universal Knowledge Protocol: 31 nouns × 40 verbs standardize all knowledge
  • Infinite Expressiveness: Model ANY data with unlimited metadata
  • API Consolidation: 15+ methods → 2 clean APIs (search() and find())
  • Natural Language: Ask questions in plain English
  • Zero Configuration: Works instantly, no setup required
  • O(log n) Performance: Binary search on sorted indices
  • Perfect Interoperability: All tools and AI models speak the same language
  • Universal Compatibility: Node.js, Browser, Edge, Workers

Quick Start - Zero Configuration

npm install @soulcraft/brainy

🎯 True Zero Configuration

import { BrainyData } from '@soulcraft/brainy'

// Just this - auto-detects everything!
const brain = new BrainyData()
await brain.init()

// Add entities (nouns) with automatic embedding
const jsId = await brain.addNoun("JavaScript is a programming language", 'concept', { 
  type: "language", 
  year: 1995,
  paradigm: "multi-paradigm"
})

const nodeId = await brain.addNoun("Node.js runtime environment", 'concept', {
  type: "runtime",
  year: 2009,
  platform: "server-side"
})

// Create relationships (verbs) between entities
await brain.addVerb(nodeId, jsId, "executes", {
  since: 2009,
  performance: "high"
})

// Natural language search with graph relationships
const results = await brain.find("programming languages used by server runtimes")

// Triple Intelligence: vector + metadata + relationships
const filtered = await brain.find({
  like: "JavaScript",                    // Vector similarity
  where: { type: "language" },           // Metadata filtering  
  connected: { from: nodeId, depth: 1 }  // Graph relationships
})

📋 System Requirements

Node.js Version: 22 LTS or later (recommended)

  • Node.js 22 LTS - Fully supported and recommended for production
  • Node.js 20 LTS - Compatible (maintenance mode)
  • Node.js 24 - Not supported (known ONNX runtime compatibility issues)

Important: Brainy uses ONNX runtime for AI embeddings. Node.js 24 has known compatibility issues that cause crashes during inference operations. We recommend Node.js 22 LTS for maximum stability.

If using nvm: nvm use (we provide a .nvmrc file)

🚀 Key Features

World's First Triple Intelligence™ Engine

The breakthrough that enables the Universal Knowledge Protocol:

  • Vector Search: Semantic similarity with HNSW indexing
  • Graph Relationships: Navigate connected knowledge like Neo4j
  • Document Filtering: MongoDB-style queries with O(log n) performance
  • Unified in ONE API: No separate queries, no complex joins
  • First to solve this: Others do vector OR graph OR document—we do ALL

Universal Knowledge Protocol with Infinite Expressiveness

Enabled by Triple Intelligence, standardized for everyone:

  • 24 Noun Types × 40 Verb Types: 960 base combinations
  • ∞ Expressiveness: Unlimited metadata = model ANY data
  • One Language: All tools, augmentations, AI models speak the same types
  • Perfect Interoperability: Move data between any Brainy instance
  • No Schema Lock-in: Evolve without migrations

Natural Language Understanding

// Ask questions naturally
await brain.find("Show me recent React components with tests")
await brain.find("Popular JavaScript libraries similar to Vue")
await brain.find("Documentation about authentication from last month")

🎯 Zero Configuration Philosophy

Brainy 2.9+ automatically configures everything:

import { BrainyData, PresetName } from '@soulcraft/brainy'

// 1. Pure zero-config - detects everything
const brain = new BrainyData()

// 2. Environment presets (strongly typed)
const devBrain = new BrainyData(PresetName.DEVELOPMENT)     // Memory + verbose
const prodBrain = new BrainyData(PresetName.PRODUCTION)      // Disk + optimized
const miniBrain = new BrainyData(PresetName.MINIMAL)         // Q8 + minimal features

// 3. Distributed architecture presets
const writer = new BrainyData(PresetName.WRITER)             // Write-only instance
const reader = new BrainyData(PresetName.READER)             // Read-only + caching
const ingestion = new BrainyData(PresetName.INGESTION_SERVICE) // High-throughput
const searchAPI = new BrainyData(PresetName.SEARCH_API)      // Low-latency search

// 4. Custom zero-config (type-safe)
const customBrain = new BrainyData({
  mode: 'production',
  model: 'fp32',        // or 'q8', 'auto'
  storage: 'cloud',     // or 'memory', 'disk', 'auto'
  features: ['core', 'search', 'cache']
})

What's Auto-Detected:

  • Storage: S3/GCS/R2 → Filesystem → Memory (priority order)
  • Models: FP32 vs Q8 based on memory/performance
  • Features: Minimal → Default → Full based on environment
  • Memory: Optimal cache sizes and batching
  • Performance: Threading, chunking, indexing strategies

Production Performance

  • 3ms average search - Lightning fast queries
  • 24MB memory footprint - Efficient resource usage
  • Worker-based embeddings - Non-blocking operations
  • Automatic caching - Intelligent result caching

🎛️ Advanced Configuration (When Needed)

Most users never need this - zero-config handles everything. For advanced use cases:

// Model precision control (auto-detected by default)
const brain = new BrainyData({
  model: 'fp32'  // Full precision - max compatibility
})
const fastBrain = new BrainyData({
  model: 'q8'    // Quantized - 75% smaller, 99% accuracy  
})

// Storage control (auto-detected by default)
const memoryBrain = new BrainyData({ storage: 'memory' })     // RAM only
const diskBrain = new BrainyData({ storage: 'disk' })         // Local filesystem  
const cloudBrain = new BrainyData({ storage: 'cloud' })       // S3/GCS/R2

// Legacy full config (still supported)
const legacyBrain = new BrainyData({
  storage: { forceMemoryStorage: true },
  embeddingOptions: { precision: 'fp32' }
})

Model Comparison:

  • FP32: 90MB, 100% accuracy, maximum compatibility
  • Q8: 23MB, ~99% accuracy, faster loading, smaller memory

When to use Q8:

  • Memory-constrained environments
  • Faster startup required
  • Mobile or edge deployments
  • Existing FP32 datasets (incompatible embeddings)

Air-gap deployment:

npm run download-models        # Both models (recommended)
npm run download-models:q8     # Q8 only (space-constrained)
npm run download-models:fp32   # FP32 only (compatibility)

📚 Core API

search() - Vector Similarity

const results = await brain.search("machine learning", {
  limit: 10,                    // Number of results
  metadata: { type: "article" }, // Filter by metadata
  includeContent: true          // Include full content
})

find() - Natural Language Queries

// Simple natural language
const results = await brain.find("recent important documents")

// Structured query with Triple Intelligence
const results = await brain.find({
  like: "JavaScript",           // Vector similarity
  where: {                      // Metadata filters
    year: { greaterThan: 2020 },
    important: true
  },
  related: { to: "React" }      // Graph relationships
})

CRUD Operations

// Create entities (nouns)
const id = await brain.addNoun(data, nounType, metadata)

// Create relationships (verbs)
const verbId = await brain.addVerb(sourceId, targetId, "relationType", {
  strength: 0.9,
  bidirectional: false
})

// Read
const item = await brain.getNoun(id)
const verb = await brain.getVerb(verbId)

// Update
await brain.updateNoun(id, newData, newMetadata)
await brain.updateVerb(verbId, newMetadata)

// Delete
await brain.deleteNoun(id)
await brain.deleteVerb(verbId)

// Bulk operations
await brain.import(arrayOfData)
const exported = await brain.export({ format: 'json' })

🎯 Use Cases

Knowledge Management with Relationships

// Store documentation with rich relationships
const apiGuide = await brain.addNoun("REST API Guide", 'document', {
  title: "API Guide",
  category: "documentation",
  version: "2.0"
})

const author = await brain.addNoun("Jane Developer", 'person', {
  type: "person",
  role: "tech-lead"
})

const project = await brain.addNoun("E-commerce Platform", 'project', {
  type: "project",
  status: "active"
})

// Create knowledge graph
await brain.addVerb(author, apiGuide, "authored", { 
  date: "2024-03-15" 
})
await brain.addVerb(apiGuide, project, "documents", { 
  coverage: "complete" 
})

// Query the knowledge graph naturally
const docs = await brain.find("documentation authored by tech leads for active projects")
// Find similar content
const similar = await brain.search(existingContent, {
  limit: 5,
  threshold: 0.8
})

AI Memory Layer with Context

// Store conversation with relationships
const userId = await brain.addNoun("User 123", 'user', {
  type: "user",
  tier: "premium"
})

const messageId = await brain.addNoun(userMessage, 'message', {
  type: "message",
  timestamp: Date.now(),
  session: "abc"
})

const topicId = await brain.addNoun("Product Support", 'topic', {
  type: "topic",
  category: "support"
})

// Link conversation elements
await brain.addVerb(userId, messageId, "sent")
await brain.addVerb(messageId, topicId, "about")

// Retrieve context with relationships
const context = await brain.find({
  where: { type: "message" },
  connected: { from: userId, type: "sent" },
  like: "previous product issues"
})

💾 Storage Options

Brainy supports multiple storage backends:

// Memory (default for testing)
const brain = new BrainyData({ 
  storage: { type: 'memory' } 
})

// FileSystem (Node.js)
const brain = new BrainyData({ 
  storage: { 
    type: 'filesystem',
    path: './data'
  } 
})

// Browser Storage (OPFS)
const brain = new BrainyData({ 
  storage: { type: 'opfs' } 
})

// S3 Compatible (Production)
const brain = new BrainyData({ 
  storage: { 
    type: 's3',
    bucket: 'my-bucket',
    region: 'us-east-1'
  } 
})

🛠️ CLI

Brainy includes a powerful CLI for testing and management:

# Install globally
npm install -g brainy

# Add data
brainy add "JavaScript is awesome" --metadata '{"type":"opinion"}'

# Search
brainy search "programming"

# Natural language find
brainy find "awesome programming languages"

# Interactive mode
brainy chat

# Export data
brainy export --format json > backup.json

🧠 Neural API - Advanced AI Features

Brainy includes a powerful Neural API for advanced semantic analysis:

Clustering & Analysis

// Access via brain.neural
const neural = brain.neural

// Automatic semantic clustering
const clusters = await neural.clusters()
// Returns groups of semantically similar items

// Cluster with options
const clusters = await neural.clusters({
  algorithm: 'kmeans',     // or 'hierarchical', 'sample'
  maxClusters: 5,          // Maximum number of clusters
  threshold: 0.8           // Similarity threshold
})

// Calculate similarity between any items
const similarity = await neural.similar('item1', 'item2')
// Returns 0-1 score

// Find nearest neighbors
const neighbors = await neural.neighbors('item-id', 10)

// Build semantic hierarchy
const hierarchy = await neural.hierarchy('item-id')

// Detect outliers
const outliers = await neural.outliers(0.3)

// Generate visualization data for D3/Cytoscape
const vizData = await neural.visualize({
  maxNodes: 100,
  dimensions: 3,
  algorithm: 'force'
})

Real-World Examples

// Group customer feedback into themes
const feedbackClusters = await neural.clusters()
for (const cluster of feedbackClusters) {
  console.log(`Theme: ${cluster.label}`)
  console.log(`Items: ${cluster.members.length}`)
}

// Find related documents
const docId = await brain.addNoun("Machine learning guide", 'document')
const similar = await neural.neighbors(docId, 5)
// Returns 5 most similar documents

// Detect anomalies in data
const anomalies = await neural.outliers(0.2)
console.log(`Found ${anomalies.length} outliers`)

🔌 Augmentations

Extend Brainy with powerful augmentations:

# List available augmentations
brainy augment list

# Install an augmentation
brainy augment install explorer

# Connect to Brain Cloud
brainy cloud setup

🏢 Enterprise Features - Included for Everyone

Brainy includes enterprise-grade capabilities at no extra cost. No premium tiers, no paywalls.

  • Scales to 10M+ items with consistent 3ms search latency
  • Write-Ahead Logging (WAL) for zero data loss durability
  • Distributed architecture with sharding and replication
  • Read/write separation for horizontal scaling
  • Connection pooling and request deduplication
  • Built-in monitoring with metrics and health checks
  • Production ready with circuit breakers and backpressure

📖 Read the full Enterprise Features guide →

📊 Benchmarks

Operation Performance Memory
Initialize 450ms 24MB
Add Item 12ms +0.1MB
Vector Search (1k items) 3ms -
Metadata Filter (10k items) 0.8ms -
Natural Language Query 15ms -
Bulk Import (1000 items) 2.3s +8MB
Production Scale (10M items) 5.8ms 12GB

🔄 Migration from 1.x

See MIGRATION.md for detailed upgrade instructions.

Key changes:

  • Search methods consolidated into search() and find()
  • Result format now includes full objects with metadata
  • New natural language capabilities

🤝 Contributing

We welcome contributions! See CONTRIBUTING.md for guidelines.

🧠 The Universal Knowledge Protocol Explained

How We Achieved The Impossible

Triple Intelligence™ makes us the world's first to unify three database paradigms:

  1. Vector databases (Pinecone, Weaviate) - semantic similarity
  2. Graph databases (Neo4j, ArangoDB) - relationships
  3. Document databases (MongoDB, Elasticsearch) - metadata filtering

One API to rule them all. Others make you choose. We unified them.

The Math of Infinite Expressiveness

24 Nouns × 40 Verbs × ∞ Metadata × Triple Intelligence = Universal Protocol
  • 960 base combinations from standardized types
  • ∞ domain specificity via unlimited metadata
  • ∞ relationship depth via graph traversal
  • = Model ANYTHING: From quantum physics to social networks

Why This Changes Everything

Like HTTP for the web, Brainy for knowledge:

  • All augmentations compose perfectly - same noun-verb language
  • All AI models share knowledge - GPT, Claude, Llama all understand
  • All tools integrate seamlessly - no translation layers
  • All data flows freely - perfect portability

The Vision: One protocol. All knowledge. Every tool. Any AI.

Proven across industries: Healthcare, Finance, Manufacturing, Education, Legal, Retail, Government, and beyond.

→ See the Mathematical Proof & Full Taxonomy

📖 Documentation

🏢 Enterprise & Cloud

Brain Cloud - Managed Brainy with team sync, persistent memory, and enterprise connectors.

# Get started with free trial
brainy cloud setup

Visit soulcraft.com for more information.

📄 License

MIT © Brainy Contributors


Built with ❤️ by the Brainy community
Zero-Configuration AI Database with Triple Intelligence™