Any and all contributions are entirely welcomed! Before you contribute though, there are some things you should know.
Note
Making public contributions to this repo means you accept the LICENSE agreement and you're contributing code that also respects the LICENSE agreement.
Make sure you've given both the Wiki and the API Reference a read before moving forward, such that you understand the design behind rLog.
Use the build
command to build the source files.
npm run build
Or watch
to watch the source files.
npm run watch
Start a watch for the test place.
npm run dev
Serve test.project.json
with rojo and link with an empty base plate in roblox studio.
Finally, use the shortcut ctrl
+ :
with the Test EZ Companion plugin
to run the tests.
API docs are built through the following tools:
api-extractor
-> api-documenter
-> post processing (/scripts
) -> docusaurus (/wiki
)
To host the wiki
you'll need to scope to the /wiki
directory and run the commands listed there.
For syncing the API, you can run the api
command from the rLog root directory.
npm run api
This will automatically extract the api, generate the docs for it, perform post processing, and copy it over to the wiki.
To make changes, clone the repo to your local disk.
git clone [email protected]:daymxn/rlog.git
Then, checkout to a new feature branch labeled in the following format.
git checkout -b NAME-CATEGORY-FEATURE
Where NAME
is your firstLast name or your github username. CATEGORY
is something like; feature or bugfix.
And FEATURE
is the title of the new feature (or bug) you're contributing for.
After you've made changes to your local branch, and you want to submit, you can open a Pull Request (PR) via the GitHub web panel.
Code in this repo is formatted according to eslint and prettier. You can use the attached .vscode
folder for automatically formatting on file save, or you can manually run either via the command line with the format
or lint
scripts:
npm run format
We use changesets for our release notes and version bumping.
When submitting a change that should be apart of a release, you
can run the change
script.
npm run change
It will prompt you with options for setting the message and version type.
Output [to stdout] a summary of the pending changes for a release.
npm run change:status
Export the pending changes to a changes.json
file at the root directory.
npm run change:export
To invoke a release, you'll need to pull the main
branch
and run the release:version
command.
npm run release:version
This will automatically bump the releasing projects.
After merging these changes back into main
, you can move forward
with the actual publishing.
npm run release
This will publish the releasing projects to npm, with the generated changelogs.
The last step will be pushing the release tags back to the repo.
npm run release:tags