Vault Web UI - Help & Documentation
Learn how to use the Hybrid Vault system
🚀 Quick Start
The Vault is a hybrid data management system that combines graph relationships with flexible document storage.
- Create Node Types - Define your data structure in Schema Configuration
- Add Nodes - Create entities (Projects, Tasks, Documents, etc.)
- Connect with Relationships - Link nodes together with meaningful relationships
- Search & Browse - Find and navigate your data
- Track Changes - Review complete audit history
✨ Core Features
📦 Nodes
Nodes are the primary entities in your vault. Each node has:
- A unique identifier (UUID)
- A type (Task, Project, User, etc.)
- Flexible content fields
- Access control keys
- Relationships to other nodes
🔗 Relationships
Relationships connect nodes together:
- Directed connections (source → target)
- Typed (OWNS, ASSIGNED_TO, DEPENDS_ON)
- Can have their own metadata
- Enforce schema rules
- Support access key inheritance
🔑 Access Control
Fine-grained permissions:
- Key Holders grant access
- Access keys inherited through relationships
- Users need matching keys to view data
- Hierarchical permission structure
📋 Audit Trail
Complete change history:
- Every change is logged
- Before/after snapshots
- Field-level change tracking
- User attribution and timestamps
🔄 Common Workflows
1. Setting Up a New Schema
- Navigate to Schema Configuration
- Click + Add Node Type
- Define the node type name, description, and fields
- Mark as Key Holder if it should grant access
- Set required fields and default values
- Click + Add Relationship Type to define connections
- Specify allowed source and target node types
- Set relationship direction (outgoing/incoming/bidirectional)
2. Creating a Project with Tasks
- Go to Nodes → Create Node
- Select Project as the node type
- Fill in project details (title, description, budget, etc.)
- Enable Key Holder to control access
- Click Create Node
- From the project view, click Create Task
- Add multiple tasks, which will automatically inherit project access
- Create relationships between tasks (e.g., DEPENDS_ON)
3. Assigning Tasks to Users
- Open the task you want to assign
- Click Add Relationship
- Select ASSIGNED_TO as relationship type
- Choose the target user
- Add metadata (role, priority, assigned date)
- The user will now see the task in their view
4. Searching and Filtering Data
- Use the Search page for advanced queries
- Enter keywords to search across all content
- Filter by node type (Tasks, Projects, etc.)
- Add field filters (status=active, priority=high)
- Results respect your access permissions
- Click any result to view details
5. Reviewing Audit History
- Click 📋 Audit History on any node or relationship
- View complete timeline of all changes
- See who made each change and when
- Review field-level changes (added/modified/removed)
- Use Audit Dashboard for system-wide statistics
- Export audit data for compliance reporting
🎨 UI Components Guide
Navigation Menu
Nodes - Browse and manage all nodes
Search - Advanced search with filters
Schema - Configure node and relationship types
Audit Dashboard - System-wide audit statistics
Help - This help documentation
API Docs - Technical API reference
Node View
Content Tab - View and edit all node fields
Relationships Tab - See all connections, create new ones
📋 Audit History Button - View complete change history
Edit Button - Modify node content
Delete Button - Remove node (with confirmation)
Status Badges
🔑 KEY HOLDER - Node grants access to children
ACTIVE - Current status indicator
OUTGOING - Relationship direction
Audit Change Indicators
ADDED - New field added
MODIFIED - Field value changed
REMOVED - Field deleted
💡 Tips & Best Practices
Choose descriptive names like "Task", "Project", "Document" rather than generic "Item" or "Thing"
Place key holders at natural boundaries (Teams, Projects) to simplify access control
Stick to standard relationship types (OWNS, ASSIGNED_TO, DEPENDS_ON) for easier understanding
Check audit history to understand data evolution and catch unintended changes
Store frequently changing data in content fields, static identifiers in immutable fields
Combine node type filters with content filters for precise queries
⌨️ Keyboard Shortcuts
| Shortcut | Action |
|---|---|
Ctrl + K |
Quick search (when available) |
Ctrl + S |
Save (in edit forms) |
Esc |
Close modals/cancel |
Tab |
Navigate between form fields |
⚠️ Troubleshooting
"Access Denied" errors
You don't have the required access keys. Contact the key holder owner or an administrator to grant access.
Can't create a relationship
Check the schema configuration - the relationship type may not allow connections between these node types.
Required field errors
All fields marked as required in the schema must have values. Check the schema to see which fields are mandatory.
Nodes not appearing in search
Search results are filtered by access control. You can only see nodes where you have matching access keys.
📚 Additional Resources
Complete technical reference for developers ⚙️ Schema Configuration
Define and manage your data structure 📋 Audit Dashboard
View system-wide activity and statistics
See VAULT_ARCHITECTURE.md in the project root