Thank you for your interest in contributing to UI Labs! Contributions are welcome and greatly appreciated.
Please follow these guidelines while contributing to the project.
UI Labs is a storybook plugin for Roblox that allows you to visualize stories in real-time. The goal of this plugin is to provide an intuitive, customizable and feature rich tool for developers. This plugin will be always free and open-source.
For contributing in the plugin codebase, please follow these steps:
- Typescript Knowledge
- React-luau Knowledge (UI Labs is currently being ported to Vide)
- JSX Knowledge
git clone https://github.com/YOUR_USERNAME/ui-labs.git
cd ui-labs
npm install
npm run watch
If this doesn't work, try installing roblox-ts globally first.
npm install -G roblox-ts
This should compile correctly, where the output prints Found 0 errors. Watching for file changes.
If this is not the case, the code most likely was accidentally pushed with typing errors, Reaching out to me or creating an issue will be needed.
You need to sync rojo with the file serve.project.json
using the command line or the rojo plugin
rojo serve
Now you can connect Rojo in your Roblox place. This will sync the files at ServerScriptService/UILabs
.
To test the plugin locally, mount the story at UILabs/Stories/UILabs.story
. This story should work with any storybook plugin like Hoarcekat or UI Labs itself. If you are using UI Labs to preview it, it's recommended to use Mount On Viewport
.
This story will have have features that require plugin APIs disabled such as View On Viewport
. To test these, save the UILabs folder as a local plugin
When you’re ready to submit your changes, please follow these steps:
- Ensure your changes are tested and roblox-ts compiles correctly.
- Conventional commit formats are preferred yet not required:
git commit -m "feat: describe your feature, fix: describe your fix, docs: describe your documentation"
- Push your branch:
git push origin main
- Open a Pull Request on GitHub.
If you encounter a bug, have a feature request or UX improvements, create an issue on GitHub.
- For bugs, include screenshots, error logs, reproduction steps and your code snippets.
- For feature requests, include a clear and concise description of the feature, why it would be useful, how it would be implemented and potential alternatives or workarounds.
Contributing in the documentation is really appreciate it as it's very hard to do for me.
Writing documentation doesn't require technical knowledge of the codebase, but you need to know what you are documenting.
Once you have cloned the repository, navigate to the docs
folder.
cd docs
----------
code .
npm install
npm run docs:dev
This will start the documentation server, go to a browser and open the url http://localhost:5173 to view the changes in real time.
You can find the documentation files in the docs
folder at ui-labs/docs/docs/
.
The documentation is written in markdown and uses vitepress. Visit the Vitepress documentation to learn how to write it.
It's important that you build the documentation before to make sure the documentation builds correctly.
npm run docs:build
------------------------
npm run docs:preview
If the build is successful, you can create a pull request to the main repository detailing the changes you made.