Using the dev tool
What is the dev tool?
The RPG Companion App dev tool is, as the name implies, a tool to be used when developing your own TTRPG systems for the app. If you have followed the Getting Started guide until now, you probably already know how to write your system files. However, how can you test them?
That is where the dev tool comes into play. By using it, you will be able to transfer your system file and resources to your RPG Companion App running on your mobile device. The app will then tell you about any issues your system file has, and you will be able to play with your system and try it out, easy and fast!
Once you are done developing and the time comes to package your system in a repository to host it so that your friends and the rest of the app's community can use it, you will also use the tool to create the repository, and all that will be left for you will be to host it.
How to use the tool?
The tool is very simple. In the future, it will be updated to include more advanced features to improve your TTRPG system developer life and make the process easier. For now, the UI consists of just 6 buttons, and a log pane where you will see information on what the tool is doing. This is particularly helpful to know what's going on, where things might've gone wrong (if that happens) and this is how the tool communicates with you.
The 6 action buttons are:
Select Input Folder
You should use this button at the very start of your development session, and you should utilize it to select the system input folder (ie: the folder that you created in System Creation). You need to do this to tell the tool where your systems are located in your workspace so that it will use those.
Build now
This button will trigger a manual rebuild of your system file. This is unnecessary
for the most part, as the tool will actively monitor the folder you set with the
Select Input Folder button and automatically trigger rebuilds of the system package. Just be
sure to wait until you see a ✅ Build complete message at the bottom of the log before trying
to update your systems in the app, as failure to do so might result in outdated systems making
their way to your app, and you will not be testing what you want to test.
Start / Stop Server
This button (which will change its label depending on the server run status) will enable you to host the systems across a USB connection with your mobile device. Once the server is running, you can head to the app and refresh your systems. If the app is in Developer Mode (which you should enable in the app settings when developing your TTRPG systems), the app will communicate with the dev tool to pull the systems you're working on and use them in the app. Be sure to pay attention to any errors, as they will tell you when things go wrong and hint you at where the problems are. If you have any doubts, please contact Vlad (the app developer), who is always happy to help.
Open in Browser:
This will allow you to explore the structure of the repository of systems the dev tool is hosting. This is largely unnecessary for you to do, but it can come in handy to validate that the server is indeed running and reachable, in case the connection with the device is not working as intended—it helps diagnose the issue a bit.
Clear Output
This button will clear the output of the tool in the working directory. This will not do anything to your source system files. This button will be generally unused.
Create Release Package
Once you are ready to package and host your system for other people, you can use this button to select an empty folder, and the app will output the repository contents that you should use to host your system for other people. Just upload this folder's contents to any CDN service (e.g: AWS S3 + CloudFront, or other), maintaining the same folder structure and naming. A quick ChatGPT query might help if you are confused as to how to do this, but you can always contact Vlad for help if needed.
And that's about it!