Quick Start
Build your first knowledge graph in 60 seconds.
1. Initialize Brainy
Create a new Brainy instance. No configuration needed - it just works:
app.js
import { Brainy } from '@soulcraft/brainy'
const brain = new Brainy()
await brain.init()
console.log('Brainy is ready!')
2. Add Knowledge
Add entities to your knowledge graph. Brainy automatically generates embeddings:
app.js
// Add some programming languages
const jsId = await brain.add({
data: "JavaScript is a dynamic programming language",
metadata: { type: "language", year: 1995 }
})
const tsId = await brain.add({
data: "TypeScript adds static types to JavaScript",
metadata: { type: "language", year: 2012 }
})
const nodeId = await brain.add({
data: "Node.js is a JavaScript runtime",
metadata: { type: "runtime", year: 2009 }
})
console.log('Added 3 entities')
3. Create Relationships
Connect entities with typed relationships:
app.js
// TypeScript extends JavaScript
await brain.relate({
from: tsId,
to: jsId,
type: "extends"
})
// Node.js executes JavaScript
await brain.relate({
from: nodeId,
to: jsId,
type: "executes"
})
console.log('Created relationships')
4. Search Your Knowledge
Use Triple Intelligence to search by meaning, relationships, and metadata:
app.js
// Vector search - finds by meaning
const results = await brain.find({
query: "typed programming languages"
})
console.log(results)
// [{ data: "TypeScript adds static types...", score: 0.92 }]
// With metadata filter
const modern = await brain.find({
query: "programming",
where: { year: { greaterThanOrEqual: 2010 } }
})
// With relationship filter
const related = await brain.find({
query: "programming",
connected: { to: jsId } // Find things connected to JavaScript
})
Complete Example
Here's the full code in one file:
complete-example.js
import { Brainy } from '@soulcraft/brainy'
// Initialize
const brain = new Brainy()
await brain.init()
// Add entities
const js = await brain.add({
data: "JavaScript is a dynamic programming language",
metadata: { type: "language", year: 1995 }
})
const ts = await brain.add({
data: "TypeScript adds static types to JavaScript",
metadata: { type: "language", year: 2012 }
})
// Create relationship
await brain.relate({ from: ts, to: js, type: "extends" })
// Search with Triple Intelligence
const results = await brain.find({
query: "typed languages",
where: { year: { greaterThanOrEqual: 2010 } }
})
console.log('Found:', results)
What's Next?
- Learn about Triple Intelligence - Understand vector + graph + metadata search
- API Reference: add() - Full options for adding entities
- API Reference: find() - All query options and filters