Ad

LokiJS: Fast in-memory JavaScript database

LokiJS is a fast, embeddable in-memory NoSQL database enabling offline syncing with SQL/NoSQL databases. It's designed for performance-critical JavaScript applications.
Screenshot of techfort/LokiJS homepage

LokiJS is a high-performance, document-oriented database written in JavaScript designed for use in various JavaScript environments. It stores data as JavaScript objects, offering a flexible and efficient alternative to traditional SQL databases, particularly for scenarios demanding speed and embedded functionality. LokiJS achieves this through optimized indexing strategies and a lightweight design.

LokiJS distinguishes itself through its exceptional speed, supporting unique and binary indexes for rapid data access. Its ability to run in diverse environments, including browsers, Node.js, and NativeScript, provides flexibility. Dynamic views enable efficient data subset retrieval, enhancing performance. The built-in persistence adapters offer adaptability, and the changes API allows for efficient data synchronization.

  • Performance: Offers high-speed NoSQL operations with unique index (1.1M ops/s) and binary index (500k ops/s).
  • Cross-Platform: Runs seamlessly in browsers, Node.js, NativeScript, and other JavaScript-supported environments.
  • Dynamic Views: Enables fast data retrieval for specific subsets of data without full collection scans.
  • Persistence: Supports built-in persistence adapters and user-defined adapters for data durability and synchronization.
  • Changes API: Provides a mechanism for tracking and applying data changes efficiently.
  • Joins: Supports data joins, extending its capabilities beyond simple document storage.
  • Indexing: Utilizes unique and binary indexes for optimized data retrieval and filtering.

LokiJS has been actively developed since 2013, demonstrating ongoing maintenance and a stable codebase. Recent commits indicate continued development efforts, and a moderate level of issue activity suggests responsiveness to user feedback. Comprehensive documentation is available on the project wiki, indicating a commitment to user support. The project has a substantial number of stars and forks, suggesting a reasonable community presence.

LokiJS benefits developers needing a fast, embeddable database solution for client-side applications, mobile apps, or situations requiring offline data synchronization. It provides a valuable alternative to traditional databases, especially for scenarios where JavaScript proficiency is prevalent and performance is critical. By minimizing network interactions and offering efficient indexing, LokiJS improves application responsiveness and user experience.

Languages:
Summarize:
Share:
Stars
6,828
Forks
477
Issues
35
Created
13 years ago
Commit
3 years ago
License
MIT
Archived
No
Updated 26 days ago

Similar Repositories