Permafrost
Permafrost
A Luau library for working with immutable data structures, including many built-in data manipulation functions.
Immutable data structures provide a variety of benefits as a result of not being able to be modified after creation, including being:
- easier to reason about, and test,
- easier to use in concurrent environments.
Installation
Permafrost is available as a Luau module or as a roblox-ts Typescript package.
Luau module via Wally
If you're using Wally to manage your Luau packages, you can add Permafrost by adding to the [dependencies] section of your wally.toml file:
Permafrost = "lastlevelstudios/permafrost@1.0.0"
And then run wally install to install the package.
Luau module manually
For a manual installation into Roblox Studio, you can download the rbxm file from the Releases tab on GitHub, or build your own by running:
rojo build --output permafrost.rbxm
Then, right-click on the desired parent in Roblox Studio (e.g. ServerScriptStorage) and choose "Insert from file..."; select the rbxm file.
Typescript module
Simply run the following in your roblox-ts project:
npm i @rbxts/permafrost
Documentation
You can see the full docs for the Permafrost library at permafrost.docs.lastlevel.dev.
Documentation can also be generated and published by a contributor using the command:
moonwave build --publish
License
Licensed under the MIT license (LICENSE.txt or http://opensource.org/licenses/MIT).