{"id":"encodedlux/sling","name":"sling","scope":"encodedlux","platform":"roblox","description":"A modern and reactive backpack system for Roblox.","version":"0.1.5","latest":"0.1.5","versions":["0.1.0","0.1.1","0.1.2-rc.1","0.1.2-rc.2","0.1.2","0.1.3-rc.2","0.1.3-rc.3","0.1.3-rc.5","0.1.3","0.1.4","0.1.5"],"license":"MIT","licenseRating":"safe","licenseCaveats":[],"licenseVerified":true,"dependencies":{"1foreverhd/topbarplus":{"version":"^3.4.0","alias":"topbarplus"},"encodedlux/vide":{"version":"^0.4.2","alias":"vide"}},"integrity":"5e9aa3b613b50d1109e23d009571f17df58c9821a8b928bf3541bfaddab87320","likes":0,"downloads":0,"install":"forest install encodedlux/sling","url":"https://forest.dev/p/roblox/encodedlux/sling","files":"https://api.forest.dev/ai/package/roblox/encodedlux/sling/files","readme":"<p align=\"center\">\r\n  <p align=\"center\">\r\n    <img alt=\"Sling\" src=\"docs/public/logo.svg\" height=\"100\">\r\n  </p>\r\n  <h1 align=\"center\"><b>Sling</b></h1>\r\n  <p align=\"center\">\r\n    A modern and reactive backpack UI for Roblox.\r\n  </p>\r\n</p>\r\n\r\n<div align=\"center\">\r\n\r\n![GitHub Workflow Status](https://img.shields.io/github/actions/workflow/status/encodedlux/sling/CI.yml?style=for-the-badge&branch=main&logo=github)\r\n[![GitHub Release](https://img.shields.io/github/v/release/encodedlux/sling?style=for-the-badge&logo=github)](https://github.com/encodedlux/sling/releases/latest)\r\n[![Docs](https://img.shields.io/badge/docs-online-blue?style=for-the-badge&logo=gitbook)](https://encodedlux.github.io/sling/)\r\n[![Sling Demo](https://img.shields.io/badge/Try_in_roblox-blue?style=for-the-badge&logo=roblox)](https://www.roblox.com/games/128963890251413)\r\n[![GitHub License](https://img.shields.io/github/license/encodedlux/sling?style=for-the-badge)](LICENSE)\r\n\r\n</div>\r\n\r\n## About\r\n\r\nSling is a modern and reactive backpack UI designed for Roblox experiences. It replaces the default backpack system, giving you complete freedom to customize the interface however you want, dynamically categorize inventory items, and use or create custom themes.\r\n\r\n<div align=\"center\">\r\n\r\n  <img alt=\"Sling Preview\" src=\"docs/public/computer-inventory.png\" width=\"100%\">\r\n  <img alt=\"Sling Phone\" src=\"docs/public/phone-inventory.png\" width=\"73%\"> <img alt=\"Sling Portrait\" src=\"docs/public/portrait-inventory.png\" width=\"23%\">\r\n\r\n</div>\r\n\r\n---\r\n\r\n## Features\r\n* [**Custom Categorization** 🎒](https://encodedlux.github.io/sling/tut/crash-course/3-category) - Group your inventory items into tab categories (e.g., Weapons, Potions, Resources) using simple, custom declarative predicate functions.\r\n* [**Custom Themes** 🎨](https://encodedlux.github.io/sling/tut/crash-course/4-themes) - Customize theme properties, switch between predefined themes (default and light), or define your own.\r\n* [**Subscribe to Events** 🔔](https://encodedlux.github.io/sling/tut/crash-course/5-events) - Track when the player interacts with their backpack, equips items, or when items are added/removed.\r\n* [**Manage Hotbar** 🔢](https://encodedlux.github.io/sling/tut/crash-course/6-hotbar) - Track when the user rearranges items and programmatically set which items should be placed in the hotbar.\r\n\r\n---\r\n\r\n## Installation\r\n\r\n### Github Releases\r\n\r\n1. Download the `sling.rbxm` model file from the [Github Releases](https://github.com/encodedlux/sling/releases/latest).\r\n2. Open Roblox Studio and create a new place or open an existing place.\r\n3. In the Explorer window, insert **Sling** into **ReplicatedStorage**.\r\n4. Select the **Sling** model file you downloaded from GitHub.\r\n\r\n**Sling** uses [RunContext](https://devforum.roblox.com/t/live-script-runcontext/1938784) to run anywhere, so you do not need to move it from Workspace, though it is recommended to parent it to **ReplicatedStorage** for better practices and organization.\r\n\r\n### Wally\r\n\r\nAdd **Sling** to your `wally.toml` dependencies:\r\n```toml\r\n[dependencies]\r\nsling = \"encodedlux/sling@0.1.5\"\r\n```\r\nThen, run `wally install` in your project folder.\r\n\r\n---\r\n\r\n## Documentation\r\n\r\n- See the [documentation](https://encodedlux.github.io/sling/) for more about Sling. Follow the guides of usage and customization to get the most out of Sling.\r\n\r\n## Credits\r\n\r\n- Heavily inspired off [Satchel](https://github.com/ryanlua/satchel). This project started with the idea of creating a more practical and customizable version of the backpack system by using [Vide](https://github.com/centau/vide).\r\n\r\n---\r\n\r\n## License\r\n\r\nSling is licensed under the MIT License - see the [LICENSE](LICENSE) for details.","readmeTruncated":false}