Repository navigation
v0.1.0
v0.1.0 - Initial Public Release
Overview
database-framework is a protocol-extensible, customizable index database designed for the AI era, built on FoundationDB's transactional guarantees.
Features
Core Engine
- FDBContainer: Application resource manager (database connection, schema, directory resolution)
- FDBContext: Transaction manager with change tracking and batch operations
- SchemaRegistry: PostgreSQL pg_catalog equivalent for schema metadata persistence
- TypeCatalog: Codable schema metadata (fields, indexes, directory structure)
- DynamicProtobufDecoder/Encoder: Runtime codec for TypeCatalog-based data access
Index Types (13 modules)
- ScalarIndex: Single/composite field indexing with uniqueness constraints
- VectorIndex: High-dimensional vector similarity search (HNSW, Flat)
- FullTextIndex: Text search with tokenization and BM25 ranking
- SpatialIndex: Geographic queries (R-tree, geohash)
- RankIndex: Leaderboard and ranking queries
- PermutedIndex: Multi-field permutation indexing
- GraphIndex: RDF triple store with SPARQL support
- AggregationIndex: Pre-computed aggregates (COUNT, SUM, MIN, MAX)
- VersionIndex: Temporal versioning with point-in-time queries
- BitmapIndex: Low-cardinality categorical queries
- LeaderboardIndex: Real-time ranking with score updates
- RelationshipIndex: One-to-many/many-to-many relationship queries
Query Engine
- QueryAST: Abstract Syntax Tree for SQL and SPARQL
- SQLParser: ISO SQL query parsing
- SPARQLParser: W3C SPARQL 1.1 query parsing
- SQL/PGQ support: Graph pattern matching (ISO/IEC 9075-16:2023)
- Query builder: Programmatic query construction
- Query Planner: Cost-based optimization with DNF conversion, predicate pushdown, index selection
DatabaseCLI
- DatabaseREPL: Interactive database shell (PostgreSQL psql equivalent)
- Schema, data, query, and graph commands
- Partition support for multi-tenant types
- Raw FDB access commands
Installation
dependencies: [
.package(url: "https://github.com/1amageek/database-framework.git", from: "0.1.0")
]Requirements
- Swift 6.2+
- macOS 15+
- FoundationDB 7.3+
Standards Compliance
- ISO/IEC 9075:2023 (SQL)
- ISO/IEC 9075-16:2023 (SQL/PGQ - Property Graph Queries)
- W3C SPARQL 1.1 Query Language
- W3C RDF 1.1 (Named Graphs)
Documentation
Related Projects
- database-kit - Model definitions and index types
- fdb-swift-bindings - FoundationDB Swift bindings
- swift-hnsw - HNSW vector index