Skip to main content

Adding Module Icons on Desktop in Frappe Framework v15

Introduction & Context

In Frappe Framework v15, module icons are not just visual elements—they define how users discover, navigate, and trust your application. A well-configured desktop icon improves usability, reinforces branding, and ensures your custom app feels native within the Frappe Desk.
This guide explains how to add and manage module icons on the desktop, strictly following Frappe Framework Version 15 conventions and the official documentation.

What Are Desktop Module Icons in Frappe?

Desktop module icons are top-level navigation entries shown on the Frappe Desk. Each icon represents a Module Def and acts as an entry point to DocTypes, reports, and pages belonging to that module.
In v15, desktop icons are rendered dynamically from Module Def records and app metadata.

When Should You Add a Custom Module Icon?

You should add a module icon when:

  • Creating a new custom app
  • Introducing a new functional module
  • Branding a vertical solution (Manufacturing, Real Estate, Healthcare, etc.)
  • Improving usability for non-technical users

Technical Prerequisites

Before proceeding, ensure:

  • Frappe Framework Version 15
  • Developer Mode is enabled
  • You have System Manager access
  • Your app is installed on the site
  • Desk access is available

How Desktop Module Icons Work in Frappe v15

Core Components Involved

Component Purpose
Module Def Defines the module and icon
App Owns one or more modules
Desk Renders modules dynamically
SVG Icon Visual representation

Step-by-Step: Adding a Module Icon on Desktop

Step 1: Create or Identify a Module Def

Each desktop icon corresponds to a Module Def record.

Navigate to:

Awesome Bar → Module Def

Create a new Module Def if it doesn’t already exist.

Step 2: Configure the Module Def Properly

Fill the following fields carefully:

Field Description
Module Name Display name on Desk
App Name Your custom app
Custom Enabled for custom apps
Icon SVG icon name

The Icon field expects a valid SVG icon name, not a file path.

Step 3: Choose the Correct Icon Format

Frappe v15 uses SVG icons from the built-in icon registry.

Example icon values:

  • octicon octicon-briefcase
  • octicon octicon-home
  • octicon octicon-organization

Only supported icons render correctly on Desk.

How Icons Are Rendered on Desk

Once configured:

  • The module appears on the desktop grid
  • Clicking the icon opens the module workspace
  • Permissions control visibility automatically

No custom JavaScript or CSS is required.

Best Practices for Module Icons

  • Use clear, recognizable icons
  • Keep naming consistent across modules
  • Avoid overloading the desktop with too many modules
  • Match icon semantics with module purpose
  • Reuse standard icons where possible

Common Mistakes to Avoid

  • Using unsupported icon names
  • Expecting PNG/JPG icons to work
  • Forgetting to assign the correct App
  • Creating modules without permissions

Troubleshooting Module Icon Issues

Module Not Visible on Desktop?

Check:

  • Module Def exists and is not disabled
  • User has permission to the module
  • App is installed correctly
  • Desk cache is refreshed

Icon Not Displaying?

Ensure:

  • Icon name is valid
  • No spelling errors
  • SVG icon exists in the registry
  • Browser cache is cleared

Industry Relevance & Use Case Mapping

Desktop module icons are widely used in:

  • Manufacturing ERP – Production, Quality, Inventory
  • Real Estate ERP – Projects, Units, Leads
  • Healthcare ERP – Patients, Appointments, Billing
  • Distribution ERP – Sales, Logistics, Warehousing

A clear icon improves adoption and training speed.

Target Audience

  • ERPNext Developers
  • Frappe App Developers
  • ERP Implementation Consultants
  • System Administrators

Summary: Clean Navigation Starts with the Right Icon

In Frappe Framework v15, adding module icons is a configuration-driven, stable, and upgrade-safe process. By correctly defining Module Defs and using supported SVG icons, you ensure your app integrates seamlessly with the Desk and delivers a professional user experience.

Rating: 0 / 5 (0 votes)