RoamJS Developer

How to start contributing to the RoamJS ecosystem!
There are multiple ways to start contributing to the RoamJS ecosystem. The primary way is to sign up for the Developer service.
Once you have signed up for a RoamJS account, you could subscribe to the Developer service which is free to start. This will give you a token and a copy extension button that you could use to add the service to your graph. Installing the extension will create a roam/js/developer page which will serve as your central dashboard.


Each extension lives in a subpath within the domain. Given an extension with an id, by default, the extension's entry point would be found in
To claim a subpath for your extension, head to the roam/js/developer page and enter the id you'd like in the Path field. The id must consist of lowercase alphabetic characters, numeric characters, or dash (-). Click the Request Path button to reserve it under your account. Once successful, the path will be added to your dashboard and you will have permission to start deploying to that path!


Within the Paths section, each id listed can be clicked to navigate to the page of the same name. This is where you configure the extension's documentation and metadata. The top-level blocks on the extension's page serve as keys, whose children serve as values for each of those keys. The most important key is the Documentation key.
To create documentation for your extension, create a block that says Documentation. Nested under that block, begin filling out content on how to use and configure your extension. We would recommend setting the view type for this bullet to be "View as Document" so that it appears like a document page on RoamJS as opposed to a bulleted list.
Formatting in Roam will be reflected in RoamJS. For example, if you create a heading or use bolding/italics, then the resulting output on RoamJS will also use headings or bold/italics.


Create a block that says Description on your extension page. Nest under it a one-line description of what your extension does. The value of this description is used for SEO of your extension's page, displayed at the top of your extension's documentation, and shown when hovering over an extension while browsing.


Description and Documentation are the only two required fields for creating an extension page. Once those two are set, head over to your developer dashboard and click the "Update Documentation" icon. This will deploy your changes to the RoamJS site, making your extension accessible at[id].
A green success toast will appear upon successful upload of your extension's metadata. It will take another 5 minutes after this success notification for it to be fully available on RoamJS.