Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nezuo/lapis
A DataStore abstraction library for Roblox
https://github.com/nezuo/lapis
Last synced: 8 days ago
JSON representation
A DataStore abstraction library for Roblox
- Host: GitHub
- URL: https://github.com/nezuo/lapis
- Owner: nezuo
- License: mit
- Created: 2021-06-18T21:39:53.000Z (over 3 years ago)
- Default Branch: master
- Last Pushed: 2024-04-14T21:33:46.000Z (10 months ago)
- Last Synced: 2024-04-18T06:58:19.634Z (9 months ago)
- Language: Lua
- Homepage: https://nezuo.github.io/lapis/
- Size: 1.18 MB
- Stars: 36
- Watchers: 4
- Forks: 4
- Open Issues: 11
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
- awesome-roblox - Lapis - A DataStore abstraction library for Roblox. (Libraries / DataStore)
- awesome-roblox - Lapis
README
# 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](https://github.com/evaera/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.