Skip to content

Latest commit

 

History

History
151 lines (73 loc) · 3.53 KB

File metadata and controls

151 lines (73 loc) · 3.53 KB

Naming your ComfyUI plugin project clearly and consistently is crucial for discoverability, avoiding conflicts, and ensuring users understand what your extension does. Based on the search results and community practices, here's a comprehensive guide to naming conventions: 🏷️ 1. Git Repository Name (GitHub Project Name)

This is the most visible identifier for your project. The standard convention is:

 Prefix with ComfyUI- to clearly indicate it's a ComfyUI extension 

. Follow with a unique identifier (often your name or organization) and a descriptive name for the functionality . Use hyphens (-) to separate words. Avoid spaces or underscores

 .

Format: ComfyUI-[YourIdentifier]-[DescriptiveName]

Examples:

 ComfyUI-Manager 

ComfyUI-Impact-Pack

ComfyUI-APZmedia-cleanName-from-string

ComfyUI-Custom-Scripts

📂 2. Custom Node Directory Name

The directory name inside ComfyUI's custom_nodes folder should match your Git repository name to avoid confusion

. 🧩 3. Node Category Names

Inside your code, nodes are categorized in the UI menu using the CATEGORY field in your node class

.

 Use a consistent prefix (e.g., your identifier) to group your nodes together and prevent conflicts 

. Separate subcategories with /

 .

Format: [YourIdentifier]/[Subcategory]

Examples:

 APZmedia/Naming Tools 

🐑 MieNodes/🐑 Caption Tools

 image/upscaling (for generic categories)

🧾 4. Node Display Names (UI Names)

These are the human-readable names shown in the node menu. They are defined in NODE_DISPLAY_NAME_MAPPINGS in your init.py

.

 Use clear, descriptive names with spaces and proper capitalization (Title Case or PascalCase) 

 .
 Avoid technical jargon where possible.

Examples:

 APZmedia Clean File Name Node 

Batch Rename Files 🐑

Standard Filename Builder

📄 5. Python Module and Class Names

 Module files (.py): Use snake_case (e.g., filename_builder.py).
 Node classes: Use PascalCase (e.g., BatchRenameFiles 

 ).

⚙️ 6. File Structure and Metadata

 Include a clear README.md with your project name and purpose 

. Use a requirements.txt file for dependencies

. Ensure your init.py correctly exports NODE_CLASS_MAPPINGS and NODE_DISPLAY_NAME_MAPPINGS

 .

💡 Best Practices Summary Aspect

Convention

Example

Git Repo Name ComfyUI-[Identifier]-[Description] (Hyphens) ComfyUI-APZmedia-Naming-Tools Node Category [Identifier]/[Subcategory] APZmedia/Naming Tools Node Display Name Descriptive, Title Case or PascalCase APZmedia Clean File Name Node Python Class Name PascalCase CleanFileName Uniqueness Prefix with your unique identifier to avoid conflicts Using APZmedia or Mie as a prefix

❌ Common Pitfalls to Avoid

 Inconsistent Naming: Ensure your repo name, directory name, and node categories align.
 Generic Names: Avoid names like utils or tools without a unique prefix 

. Ignoring Conflicts: Check existing nodes to avoid name collisions in categories or display names

 .

🛠️ Tools for Management

 Use ComfyUI Manager to install, update, and manage custom nodes easily 

. For sharing, consider listing your node in the ComfyUI Registry or community-curated lists like Awesome ComfyUI Custom Nodes

 .

Following these conventions will make your plugin more professional, easier to discover, and simpler for users to manage alongside other custom nodes.