Hawiah: The Ultra-Fast
Universal Database Interface
Stop settling for slow database layers. Hawiah is 2.6x faster than industry standards, providing a zero-config, unified API for SQL, NoSQL, and Local files, powered by a revolutionary Hybrid Schema engine.
Total execution time (Lower is better)
Results from SQLite local performance cluster
One API for All Your
Databases
A truly modular abstraction layer. Install only the drivers you need and switch between them without changing your code.
Unified API
Write your application logic once using Hawiah's unified API. Hybrid Schema technology automatically adapts your data for SQL tables or NoSQL documents without changing a line of code.
Modular Architecture
Install only what you need. Each driver is a separate package (@hawiah/mongo, @hawiah/sqlite, etc.), keeping your bundle size minimal.
Virtual Relationships
Create relationships between different Hawiah instances. Join a User in SQL with their Activity in MongoDB using built-in DataLoader support.
TypeScript Support
Full type safety and autocomplete. Hawiah leverages TypeScript generics to ensure your code is robust and error-free.
Prototyping to Production
Start your project with simple local JSON files. When you're ready to scale, switch to robust databases like MongoDB or PostgreSQL without rewriting logic.
Connect to Any Database
Unified API across all supported drivers
✨ Plus Virtual Relationships with DataLoader batching
MemoryDriver
In-memory storage
@hawiah/localJSONDriver
Local JSON files
@hawiah/localYAMLDriver
Local YAML files
@hawiah/localSQLiteDriver
SQLite database
@hawiah/sqliteMongoDriver
MongoDB support
@hawiah/mongoFirebaseDriver
Firebase Firestore
@hawiah/firebasePostgreSQLDriver
PostgreSQL database
@hawiah/postgresMySQLDriver
MySQL database
@hawiah/mysqlCustomDriver
Build your own
DIYOne API, Multiple Drivers
Same code, different databases. Switch drivers without changing your application logic.
import { Hawiah } from 'hawiah';
import { JSONDriver } from '@hawiah/local';
const driver = new JSONDriver('./users.json');
const db = new Hawiah({ driver });
await db.connect();
await db.insert({
id: 1,
name: 'Ahmed',
age: 25
});
const users = await db.get({});
await db.disconnect();Start Simple, Scale Big
Begin with local JSON files for rapid prototyping, then switch to MongoDB or PostgreSQL for production without changing your code.