An immutable in-memory database and Datalog query engine in Clojure and ClojureScript. DataScript is meant to run inside the browser. It is cheap to create, quick to query and ephemeral. You create a database on page load, put some data in it, track changes, do queries and forget about it when the user closes the page. DataScript databases are immutable and based on persistent data structures. In fact, they’re more like data structures than databases (think Hashmap). Unlike querying a real SQL DB, when you query DataScript, it all comes down to a Hashmap lookup. Or series of lookups. Or array iteration. There’s no particular overhead to it. You put a little data in it, it’s fast. You put in a lot of data, well, at least it has indexes. That should do better than you filtering an array by hand anyway. The thing is really lightweight. The intention with DataScript is to be a basic building block in client-side applications that needs to track a lot of state during their lifetime.

Features

  • Central, uniform approach to manage all application state
  • Immutability simplifies things even in a single-threaded browser environment
  • Datalog query engine to answer non-trivial questions about current app state
  • Structured format to track data coming in and out of DB
  • Clients working with state become decoupled and independent
  • Keep track of app state evolution, rewind to any point in time

Project Samples

Project Activity

See All Activity >

License

Eclipse Public License

Follow DataScript

DataScript Web Site

Other Useful Business Software
Custom VMs From 1 to 96 vCPUs With 99.95% Uptime Icon
Custom VMs From 1 to 96 vCPUs With 99.95% Uptime

General-purpose, compute-optimized, or GPU/TPU-accelerated. Built to your exact specs.

Live migration and automatic failover keep workloads online through maintenance. One free e2-micro VM every month.
Try Free
Rate This Project
Login To Rate This Project

User Reviews

Be the first to post a review of DataScript!

Additional Project Details

Registered

2021-12-10