Skip to content

An OrderedDataStore abstraction library for Roblox

License

Notifications You must be signed in to change notification settings

TheNoobPro44/ordered-lapis

 
 

Repository files navigation

Lapis

A Roblox DataStore abstraction that offers:

  • Session Locking - Documents can only be accessed from one server at a time. This prevents some bugs and duping methods.
  • Validation - Ensure your data is correct before saving it.
  • Migrations - Update the structure of your data over time.
  • Retries - Failed DataStore requests will be retried.
  • Throttling - DataStore requests will never exceed their budget and throw an error.
  • Promise-based API - Promises are used instead of yielding.
  • Immutability - By default, documents are deep frozen must be updated immutably. This can be disabled.
  • Save Batching - Pending Document:save() and Document:close() calls are combined into one DataStore request when possible.
  • Auto Save - Documents are automatically saved every 5 minutes.
  • BindToClose - All documents are automatically closed when the game shuts down.

This library was inspired by Quicksave.

Warning

Lapis has not been battle-tested in a large production game yet. It may contain obscure bugs so use at your own risk.

About

An OrderedDataStore abstraction library for Roblox

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Lua 100.0%