---
sourceDocument: Australia Build or modify applications
sourceDocumentLink: https://servicenow-prod.fluidtopics.net/r/application-development

 Release :

    - australia

ft:locale :

    - en-US

ft:publication_title :

    - Australia Build or modify applications

ft:clusterId :

    - cadev

bundleId :

    - cadev

workflow :

    - Development, Data, and Analytics


---

# Building applications in source code

# Building applications in source code {#ariaid-title1}

Release version: Australia  
Updated June 2, 2026  
![](https://www.servicenow.com/docs/portal-asset/ico-clock) 4 minutes to read
Summarize  
![AI sparkle icon](https://servicenow.com/docs/portal-asset/ai-sparkle-icon) Summarized using AI  
This content was generated using new OpenAI-powered functionality. Results are provided on an as is basis and are not guaranteed to be accurate or complete.  

## Summary of Building applications in source code

ServiceNow enables customers to create and develop custom applications in source code using familiar development tools and processes.
Development can be done either online using the ServiceNow IDE on the ServiceNow AI Platform or locally via Visual Studio Code Desktop with the ServiceNow SDK.
Both environments utilize ServiceNow Fluent, a domain-specific language designed to define application metadata, alongside JavaScript modules and third-party libraries for enhanced code reuse and functionality.
Show full answer Show less  
Developing applications in source code improves the ability to work within familiar tools, manage complex applications, maintain source control efficiently, and identify errors early during build time.

## Development Environments

* **ServiceNow IDE:** A web-based IDE built on Visual Studio Code for the Web, hosted on the ServiceNow AI Platform, supporting real-time collaboration, Git integration, application conversion, and includes features like the ServiceNow Fluent Language server, ServiceNow Otto for Code (code auto-complete), and Build Agent accessed via chat panel.
* **ServiceNow SDK:** Allows local development with Visual Studio Code Desktop, supports offline work, collaboration through source control, application conversion, and includes the Fluent Language server (available as a VS Code extension), JavaScript modules, third-party libraries, and Build Agent capabilities from version 4.6.0 onward.

## Application Structure and Configuration

Applications created or converted with the IDE or SDK follow a structure similar to Node.js/npm packages, defined by `package.json` and `now.config.json` files. Key directories include:

* **.vscode:** Recommended VS Code extensions.
* **dist:** Build artifacts for packaging, including metadata XML and static assets.
* **metadata:** Application metadata like table schemas and business rules (edited via source code or AI Platform, not directly in XML).
* **nodemodules:** Third-party Node.js dependencies.
* **src:** Source code split into client-side UI files, ServiceNow Fluent code, and server-side JavaScript modules.
* **target:** Contains installable application package (.zip) for instance upload.
* Configuration files such as `.eslintrc` (code quality), `.gitignore` (source control ignore rules), `now.config.json` (application configuration), and `package.json` (application and dependencies metadata).

The `now.config.json` file allows customization of application aspects, enabling flexibility to suit specific development needs.

## Practical Benefits for ServiceNow Customers

* Work in familiar development environments with robust tooling and language support.
* Use source control effectively to collaborate and manage application versions.
* Leverage ServiceNow Fluent and JavaScript with third-party libraries for flexible, maintainable application development.
* Develop offline locally or online collaboratively with real-time visibility into changes.
* Convert existing applications to source code format to modernize and streamline development.
* Package and deploy applications efficiently using structured build artifacts and installable packages.  
Create and develop custom applications in source code using familiar development tools and processes.

## Overview of development in source code {#building-applications-source-code__section_h4h_ytt_3bc}

You can create applications in code using the ServiceNow IDE on the ServiceNow AI Platform or locally in Visual Studio Code Desktop with the ServiceNow SDK.

In either development environment, you use ServiceNow Fluent, a domain-specific programming language, to define the metadata that makes up applications. ServiceNow Fluent includes APIs for defining the different types of metadata.

With the ServiceNow IDE or ServiceNow SDK, you can also create JavaScript modules and use third-party libraries in your application to optimize code reuse in scripts within an
application scope.

Developing and maintaining applications in source code enables you to work in familiar development environments, create and modify complex applications, manage code in source control more easily, and catch errors at build time.

|-|-|
| [ServiceNow IDE![]()Develop applications in code in an IDE on the ServiceNow AI Platform.](eMYyriIe_g3dvPLBokdLyg "Create and develop applications in source code in an integrated development environment (IDE) on the ServiceNow AI Platform to improve collaboration across development teams and accelerate application development.") | [ServiceNow SDK![]()Develop applications in code locally and upload changes to an instance.](~gZiLOf42HSLacfuqryftg "Create and develop applications in source code locally in Visual Studio Code Desktop and upload changes to an instance using the ServiceNow software development kit (SDK).") |
[ ]

{#building-applications-source-code__table_hmf_wtt_3bc}

## Comparison of the ServiceNow IDE and the ServiceNow SDK {#building-applications-source-code__section_gnx_cfc_jbc}

{#building-applications-source-code__table_tqv_dfc_jbc__entry__3}

| Feature | ServiceNow IDE | ServiceNow SDK |
|-|-|-|
| Development environment | Online ServiceNow instance | Local development and the ability to work offline |
| User interface | IDE based on Visual Studio Code for the Web | Visual Studio Code Desktop |
| Collaboration | View any user's changes in real time in code or embedded ServiceNow AI Platform user interfaces. Collaborate with other developers on applications in source control. | Download changes from an instance and install local changes to an instance using the ServiceNow SDK CLI to collaborate with other users. Collaborate with other developers on applications in source control. |
| Source control | Supports the most common Git functionality and integrating with a Git provider of your choice. One concurrent branch per repository per instance (or developer sandbox). | Full support |
| Application conversion | Support for converting existing applications not created with the ServiceNow IDE or ServiceNow SDK. | Support for converting existing applications not created with the ServiceNow IDE or ServiceNow SDK. |
| ServiceNow Fluent | Full support The ServiceNow Fluent Language server is included with the ServiceNow IDE. | Full support The ServiceNow Fluent Language server can be installed from the Visual Studio Code Extension Marketplace. |
| JavaScript modules and third-party libraries | Full support | Full support |
| ServiceNow Otto for Code | Code auto-complete support for scripts. For information about activation, see [ServiceNow Otto for Code](https://www.servicenow.com/docs/access?context=now-assist-code-landing&version=australia&pubname=australia-api-reference&ft:locale=en-US). | Not supported |
| Build Agent | Full support. Build Agent is accessed from a chat panel in the ServiceNow IDE. For information about activation, see [Build Agent](https://servicenow-prod.fluidtopics.net/uPGWJkjDyp1tG_cmu3eF3Q "Use Build Agent, an autonomous AI agent, for creating and updating ServiceNow applications. You can also ask Build Agent general ServiceNow development questions."). | Build Agent skills are available beginning with ServiceNow SDK version 4.6.0. |
[ ]

{#building-applications-source-code__table_tqv_dfc_jbc}

## Application structure {#building-applications-source-code__application-structure}

Applications created
or converted with the ServiceNow IDE or ServiceNow SDK include source code files and metadata XML files. The package.json and now.config.json files define the application structure, which is similar to that of
Node.js applications or Node Package Manager (npm) packages.
Figure 1. Default structure of an application created in the ServiceNow IDE

By default, applications include the following directories and files. You can modify certain aspects of the application structure to suit your needs in the now.config.json file.
{#building-applications-source-code__table_ws5_flw_53c__entry__2}

| Directory or file | Description |
|-|-|
| .vscode | Directory containing recommended Visual Studio Code extensions. |
| dist | Directory containing the build artifacts for packaging. This directory includes the following subdirectories: * app: Directory containing the built metadata XML files. * static: Directory containing the built static asset files. {#building-applications-source-code__ul_cpt_5vs_fgc} |
| metadata | Directory containing the application metadata (XML) of the application, such as table schemas and business rules, organized in the same directory structure as existing ServiceNow applications. Note: Application metadata shouldn't be edited from the XML files. Edit application metadata in the source code or on the ServiceNow AI Platform. |
| node_modules | Directory containing the third-party Node.js modules on which your application depends. |
| src | Directory containing the source code of your application. This directory includes the following subdirectories: * client: Directory containing the client-side files for developing user interfaces. * fluent: Directory containing ServiceNow Fluent code in .now.ts files. The generated subdirectory contains the application files converted to ServiceNow Fluent. * server: Directory containing JavaScript module code in .js or .ts files. {#building-applications-source-code__ul_z35_ttc_1cc} |
| target | Directory containing an installable package (.zip file) to upload to an instance. |
| .eslintrc | File containing the ESLint configuration. ESLint helps identify and fix issues in the application code. |
| .gitignore | File containing a list of directories or files for Git to ignore. These files aren't tracked in source control. |
| now.config.json | File containing the ServiceNow application configuration. The now.config.json file must be in the base directory for an application. You can configure aspects of an application by adding support parameters. For more information, see [Custom application configuration in source code](https://servicenow-prod.fluidtopics.net/oP9pYs8gs3z1TVM_OQSYUA "Configure a custom application [sys_app] in the now.config.json file for an application in source code."). |
| now.prebuild.mjs | Auto-updated file containing complete information about dependencies and their versions. This file is only available with the ServiceNow SDK. |
| package-lock.json | Auto-updated file containing complete information about dependencies and their versions. This file is only available with the ServiceNow SDK. |
| package.json | File containing information about your application and custom or third-party module dependencies. The package.json file must be in the base directory for an application. On an instance, the package.json path is specified in the Package JSON field of the custom application record \[sys_app\] in the format \<scope\>/\<package-name\>/\<version\>/package.json. |
[Table 1. Application structure in source code]

{#building-applications-source-code__table_ws5_flw_53c}

## Related applications and features {#building-applications-source-code__section_gf3_hkq_rvb}

[JavaScript APIs](https://www.servicenow.com/docs/access?context=api-reference&version=australia&pubname=australia-api-reference&ft:locale=en-US)
:   Use JavaScript APIs in scripts that you write to change the functionality of applications or when you create applications.
**Related concepts**   

* [ServiceNow Fluent](https://servicenow-prod.fluidtopics.net/HcU~6LR5CHZuUX~roJ7chw "Define application metadata in source code using the ServiceNow Fluent domain-specific programming language.")
* [JavaScript modules and third-party libraries](https://servicenow-prod.fluidtopics.net/GhoYByb4CqOXh~M0YiJfRQ "Optimize your code base using JavaScript modules to group related code or add third-party libraries and reuse their code within applications.")
* [User interface development with React](https://servicenow-prod.fluidtopics.net/d5PT9oEkH1p5tjX77_z7pw "Develop a user interface (UI) with the React library to build a full-stack application in source code.")  
**Related reference**   

* [Custom application configuration in source code](https://servicenow-prod.fluidtopics.net/oP9pYs8gs3z1TVM_OQSYUA "Configure a custom application [sys_app] in the now.config.json file for an application in source code.")

