Theme Manifest Metadata in NetSuite

Theme manifest.json includes vital metadata for NetSuite theme customization.

·2 min read·View Oracle Docs

The manifest.json file in NetSuite is crucial for theme customization, housing all necessary metadata and managing resource compilation for an active theme.

What is the Theme Manifest in NetSuite?

Each NetSuite theme includes a manifest.json file located within its Workspace directory. This JSON file contains comprehensive details needed to compile resources for an active theme. It lists all HTML templates, Sass, and associated assets, specifically those fetched via the gulp theme:fetch command.

Key Metadata Information

The theme's manifest.json file includes initial entries of metadata that populate automatically upon running the gulp theme:deploy command. Here are critical fields:

  • Name (string): A unique identifier for the theme; required.
  • Vendor (string): The vendor identification; required.
  • Type (string): Specifies type, typically "theme"; required.
  • Target (string): Commerce applications the theme supports; needed in a comma-separated format.
  • Version (string): Theme version, e.g., "1.2.0"; mandatory.
  • Description (string): Provides an optional description visible in NetSuite.

How Are Overrides Managed?

If any extension overrides are introduced, the manifest.json file includes them. Utilizing the Override method, Gulp.js commands detect HTML or Sass overrides, enabling automatic inclusion within this file. For example, overriding an _error.sass file results in automatic updates post gulp theme:deploy execution.

Organizing Templates and Sass

The templates object categorizes all HTML template files per application (such as shopping, myaccount, and checkout). The sass object specifies application path entries and necessary Sass files for deployment. When adding new files, ensure they are correctly ordered within their respective hierarchies in the files array.

Skins and Assets

The skins array auto-populates when commands like gulp theme:local are executed, detailing each skin preset file with properties such as name and file. Similarly, the assets object catalogs paths to images and fonts essential for the theme, specifying their locations relative to the theme's assets folder.

Who This Affects

This information is vital for the following roles and modules:

  • Developers: Responsible for theme customization and deployment.
  • Administrators: Oversee theme setup and configuration within NetSuite.
  • Commerce Teams: Utilize themes within SuiteCommerce environments.

Key Takeaways

  • manifest.json is pivotal for active theme resource compilation in NetSuite.
  • Essential metadata is automatically populated but customizable as needed.
  • Overrides, templates, Sass files, skins, and assets are seamlessly managed.
  • Proper organization and hierarchy are crucial for effective theme deployment.

Frequently Asked Questions (4)

How is the theme metadata populated in NetSuite?
The theme metadata is automatically populated when you initially run the `gulp theme:deploy` command.
Are there any required fields in the theme metadata manifest?
Yes, the fields 'name', 'vendor', 'type', 'target', and 'version' are required fields in the theme metadata manifest.
Can the description field be omitted in the theme metadata?
Yes, the 'description' field is optional and can be omitted in the theme metadata.
What does the 'target' field in the theme metadata signify?
The 'target' field indicates the Commerce applications supported by the theme and is a required entry.
Source: Theme Metadata Oracle NetSuite Help Center. This article was generated from official Oracle documentation and enriched with additional context and best practices.

Was this article helpful?

More in General

View all General articles →