https://github.com/saviornt/nexuslite
Nexus-Lite is an embedded NoSQL database engine, inspired by the best features of MongoDB (document collections) and Redis (in-memory performance, TTL, and LRU caching). The goal is to provide a lightweight, embeddable, efficient, and flexible database engine similar to SQLite but for NoSQL workloads.
https://github.com/saviornt/nexuslite
Last synced: 10 months ago
JSON representation
Nexus-Lite is an embedded NoSQL database engine, inspired by the best features of MongoDB (document collections) and Redis (in-memory performance, TTL, and LRU caching). The goal is to provide a lightweight, embeddable, efficient, and flexible database engine similar to SQLite but for NoSQL workloads.
- Host: GitHub
- URL: https://github.com/saviornt/nexuslite
- Owner: saviornt
- Created: 2025-08-18T05:36:33.000Z (10 months ago)
- Default Branch: main
- Last Pushed: 2025-08-19T16:55:54.000Z (10 months ago)
- Last Synced: 2025-08-19T18:32:23.841Z (10 months ago)
- Language: Rust
- Homepage:
- Size: 37.1 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# NexusLite
A lightweight, embeddable **NoSQL database engine** written in Rust. It is designed for **speed, reliability, and security**, NexusLite provides a document collection store with advanced recovery and cryptographic safeguards and can be used for both persistent and ephemeral documents.
---
## Features
- BSON document store with CRUD operations
- **API, CLI, and REPL** interfaces
- Import/Export using multiple formats (CSV, JSON, BSON)
- Configurable caching & indexing
- Security-first: Unsafe Rust checks, supply-chain validation and ECC-256
- Strong testing suite: Unit, Integration and property tests for CI/CD pipelines and extensive interactive tests for Mock testing.
[Explore full feature details -> Wiki](https://github.com/saviornt/NexusLite/wiki)
---
## Installation
Build source with Cargo:
```bash
cargo install nexuslite
```
Or clone and run locally:
```bash
git clone https://github.com/saviornt/NexusLite.git
cd NexusLite
cargo run
```
---
## Quick start
### Basic Database Operations with Persistent Documents
#### Rust API
```rust
// Create the example for basic CRUD operations including:
// - Create new database
// - Open the database
// - Create a new collection
// - Insert a persistent document
// - Read the persistent document
// - Update the persistent document
// - Delete the persistent document
// - Delete the collection
// - Close the database
```
#### CLI
```bash
# Create the CLI commands for basic database operations with persistent documents.
# The CLI commands for this example should follow the previous code example.
# Note: Examples should include the command syntax for Linux, Windows and MacOS
```
#### REPL
```bash
# Create the REPL commands for basic database operations with persistent documents.
```
### Basic Database Operations with Ephemeral Documents
```rust
// Create the example for basic CRUD operations including:
// - Open the database
// - Insert an ephemeral document
// - Read the ephemeral document from the collection
// - Update the ephemeral document
// - Delete the ephemeral document
// - Close the database
```
```bash
# Create the CLI commands for basic database operations with ephemeral documents.
# The CLI commands for this example should follow the previous code example.
# Note: Examples should include the command syntax for Linux, Windows and MacOS
```
```bash
# Create the REPL commands for basic database operations with ephemeral documents.
```
### Import/Export Operations
```rust
// Create the example for import/export operations including:
// - Open or create a database
// - Import a collection from NDJSON
// - Export the collection to CSV
// - Close the database
```
```bash
# Create the CLI commands for import/export operations with persistent documents.
# The CLI commands for this example should follow the previous code example.
# Note: Examples should include the command syntax for Linux, Windows and MacOS
```
```bash
# Create the REPL commands for import/export operations with persistent documents.
```
---
## Advanced Usage
- Feature flags (`crypto`, `logging`, `open-metrics`, `snapshot`, `regex`, `cli-bin`, `doctor`, `repl`)
- Recovery & Write-Ahead Shadow Paging (WASP)
- Logging and metrics
- Security, supply chain and PQC considerations
[See Advanced Topics -> Wiki](https://github.com/saviornt/NexusLite/wiki/Advanced-Topics)
---
## Development
- [Architecture](https://github.com/saviornt/NexusLite/wiki/Architecture)
- [Project Structure](https://github.com/saviornt/NexusLite/wiki/Project-Structure)
- [Testing Strategy](https://github.com/saviornt/NexusLite/wiki/Testing-Strategy)
---
## Security
- Unsafe Rust detection (`cargo-geiger`)
- Dependency auditing and license checks (`cargo-audit` & `cargo-deny`)
- Authentication and Verification using ECC-256 and ECDSA
[Security & Reliability -> Wiki](https://github.com/saviornt/NexusLite/wiki/Security-&-Reliability)
---
## Roadmap
- [x] Core CRUD and Recovery Engine
- [x] CLI & REPL
- [x] Advanced recovery and WASP tuning
- [x] Cryptographic operations
- [ ] Bindings (Python, WASM, ...)
- [ ] Experimental Features (PQC, Vector Maps)
[Project Roadmap](https://github.com/saviornt/NexusLite/wiki/Project-Roadmap)
---
## Contributing
Contributions are welcome!
Please see the [Contributing Guide](https://github.com/saviornt/NexusLite/wiki/Contributing-Guide) for coding standards, feature proposals, and security practices.
## License
MIT License, See [LICENSE](LICENSE) for details.
---
## Quick Links
- [Wiki Home](https://github.com/saviornt/NexusLite/wiki)
- [Architecture](https://github.com/saviornt/NexusLite/wiki/Architecture)
- [Advanced Usage](https://github.com/saviornt/NexusLite/wiki/Advanced-Usage)
- [Security](https://github.com/saviornt/NexusLite/wiki/Security-&-Reliability)
---