Welcome to R-IDE - created and maintained by Sascha Wildgrube.
R-IDE is the React-based IDE (as in "Integrated Development Environment") - the ultimate Studio alternative.
R-IDE is an integrated development environment - a tool for pro-coders to build and maintain custom applications.
R-IDE shows and navigates to all application files contained in an application. These files are displayed as tabs (like in classic and ServiceNow Studio). When loading the same app again the previously open tabs are restored for each user and application - so picking up work where you left it is super-convenient.
R-IDE is built with pro-coders in mind who prefer to use and see technical names rather than display names.
R-IDE navigates to application files by their related table, by their class type and by their name.
R-IDE helps to navigate to important platform tools, capabilities and documentation needed to create custom applications.
R-IDE is yet a work-in-progress project. Crucial features like source control operations or code search are not yet fully implemented - so as of now R-IDE has to send you to classic Studio to perform these.
Shortly before the first release of R-IDE the new ServiceNow Studio was released. ServiceNow Studio aims at replacing the classic Studio, App Engine Studio and various other isolated builder tools on the platform. So who needs R-IDE anyway?
There is never a single tool that will meet the demands (and the taste) of everyone. So having multiple options to choose from is a value in itself. Further, competition sometimes boosts quality and motivates everyone to build the even better product.
The work on R-IDE (then called "ServiceNow IDE" - a name now occupied by the official ServiceNow IDE) started back in May 2023. It was clear for years that the classic Studio would not receive the love it needed. R-IDE was the perfect showcase for a React-based user interface. The Reactor app - which was built to demonstrate how React can be used to create stunning user interfaces on the ServiceNow platform - was initially released in September 2022 - but it yet required a relevant use case to show its real potential.
Rebuilding all the capabilities of the classic Studio (and adding even more) is not a project for a single weekend - so it took some time to reach a state in which using R-IDE finally became more efficient for day-to-day development work than classic Studio.
With the release of ServiceNow Studio in late 2024 a decision had to be made. Keep the work in its then unfinished state or add the missing bits for a real MVP that would not have to shy away from being compared to either classic Studio or the new ServiceNow Studio.
It's now up to the ServiceNow community to judge whether R-IDE was a waste of time or a great contribution.
Either way: it was fun to build it :D
R-IDE is NOT an officially supported ServiceNow product.
R-IDE does NOT come with any kind of warranty. If you use it, you own it!
x_snc_devtools.InstallApp("x_snc_ride");
Controls if the R-IDE application is active.
Controls the verbosity of log output produced by the IDE application.
Comma separated list of tables that should always be offered when creating a new application file.
The R-IDE Developer has access to the the R-IDE user interface. Access to applications and application files is controlled by the usual platform mechanisms.
The main R-IDE App.
app_sys_id | string | The Sys ID of the application to load. If no application Sys ID is specified, the R-IDE starts with the applicaton selection. |
Allows to select, create or import an app.
Allows to select an existing app.
app_sys_id | string | Sets the application scope to start with. If set the selection contains a "Cancel" button that returns the provided application scope. | |
callbackSelectApp | function | The function to be called when an application has been selected. |
The IDE Controller React component. The IDE Controller component manages the overall state of the IDE, allows to select an app and keeps track on which app is displayed.
app_sys_id | string | Optional property that identified the application to start with. If the property is not set, the R-IDE UI starts with the application selection screen. |
Allows to select an existing apps or to create a new one.
app_sys_id | string | mandatory | The Sys ID of the application for which a new Application File should be created. |
callbackOnFileCreated | function | The function to be called after a new application file has been created. |
The RIDETreeNavigation component renders the R-IDE tree navigation based on the given app data object.
appdata | object | mandatory | An object containing information about the application whose files should be navigated. See Script Include function GetAppData() for more information about its structure. |
callbackOnClick | function | The function to be called when an item in the tree navigation is clicked. | |
callbackOnFilterReset | function | The function to be called when the string search filter value is reset by the user - e.g. by expanding all items. | |
filter | string | The string to be used as a filter to hide non-matching items in the tree navigation. |
The main css definitions for the R-IDE application.
Compatible Versions: 1.108.0
Repository url: https://github.com/saschawildgrube/servicenow-devtools.git
Compatible Versions: 1.10.0
Repository url: https://github.com/saschawildgrube/servicenow-reactor.git
No technical debt has been documented for this application.
Copyright 2024 by Sascha Wildgrube
Licensed under the Apache License, Version 2.0 (the "License")
You may not use R-IDE except in compliance with the License.
You may obtain a copy of the License at: https://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
First baselined version