# PoloDB
**Repository Path**: chjgfg/PoloDB
## Basic Information
- **Project Name**: PoloDB
- **Description**: rust版的mongodb
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: master
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2025-12-26
- **Last Updated**: 2026-03-07
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
[](https://crates.io/crates/polodb_core)
[](https://discord.gg/NmGQyVx6hH)
[](https://docs.rs/polodb_core)
[](LICENSE)
PoloDB is an embedded document database.
| [Documentations](https://www.polodb.org/docs) |
# Introduction
PoloDB is a library written in Rust
that implements a lightweight [MongoDB](https://www.mongodb.com/).
# Why
PoloDB aims to offer a modern alternative to SQLite, which is currently the almost exclusive option for client-side data storage.
Although SQLite is an old and stable software, it lacks some modern features.
That's why we developed PoloDB, which is NoSQL, supports multi-threading and multi-sessions,
and retains the embedded and lightweight features of SQLite.
# Features
- Simple and Lightweight
- can be embedded library or a standalone server
- Easy to learn and use
- NoSQL
- MongoDB-like API
- Cross-Platform
# Quick start
PoloDB is easy to learn and use:
```rust
use polodb_core::Database;
use serde::{Serialize, Deserialize};
#[derive(Debug, Serialize, Deserialize)]
struct Book {
title: String,
author: String,
}
let db = Database::open_path(db_path)?;
let collection = db.collection::("books");
collection.insert_one(Book {
title: "The Three-Body Problem".to_string(),
author: "Liu Cixin".to_string(),
})?;
```
# Packages
- polodb: The standalone server of PoloDB, which is compatible with MongoDB's wire protocol.
- [polodb_core](https://crates.io/crates/polodb_core): The core library of PoloDB, which can be embedded in your application.
# Platform
Theoretically, PoloDB supports all platforms that the Rust compiler
supports.
But PoloDB is a personal project currently.
Limited by my time, I have only compiled and tested on the following platforms:
- macOS Big Sur x64
- Linux x64 (Tested on Fedora 32)
- Windows 10 x64
# Manual
- [Documentations](https://www.polodb.org/docs)
- [Rust](https://docs.rs/polodb_core)
# Roadmap
The features will be implemented one by one in order.
- [x] Basic database API
- [x] CRUD
- [x] Transactions
- [x] Serde
- [x] Indexes(Alpha)
- [x] Aggregation(Alpha)
- [x] Command line Tools
- [ ] Platforms
- [x] MacOS
- [x] Linux
- [x] Windows
- [ ] iOS
- [ ] Android
- [ ] Languages
- [ ] Python
- [ ] JavaScript