Features
Dot notation access
Access nested JSON data with simple dot notation instead of chained bracket lookups.
Dictionary and path strings
Three ways to access data: dot notation, dictionary style, or slash-separated paths.
Query builder
Filter and transform collections with a chainable, expressive query API.
Path discovery
Explore unknown data structures with glob patterns to find what you need.
Bulk operations
Update all matching values or clean up data across the entire store.
Immutable transforms
Transform all values or keys without mutating the original data.
Comparison and diffs
Compare datastores and generate structured diffs between versions.
Security built-in
Path traversal protection and file size limits prevent common attack vectors.
File operations
Load from files or directories, save to JSON with a single call.
Quick example
from nitro_datastore import NitroDataStore
# Load JSON with dot notation access
data = NitroDataStore.from_file("src/data/site.json")
# Simple dot notation
site_name = data.site.name
tagline = data.site.tagline
# Iterate collections
for post in data.posts:
print(post.title, post.slug)
# Query builder
featured = data.posts.where(featured=True).sort_by("date")