Extension Listing Pages: When to Use Them and When not to

SketchUp strives to offer a seamless user experience for managing extensions. In order to achieve this, ideally, all extensions would be hosted on the Extension Warehouse as downloadable RBZ files. This ensures consistency in searching, installing, updating, and uninstalling extensions. It also allows for better quality control through SketchUp's code review process.

There are however some rare exceptions where a listing page might be necessary. 

 

When to Use a Listing Page

Listing pages are exceptions to the standard. They are reserved for scenarios where hosting an extension directly on the Extension Warehouse isn't feasible. Here's the primary reason a listing page could be accepted;

  • Complex installations. If an extension requires a custom installer, a listing page might be warranted. A prime example of this would be a render engine needing a completely separate installer in order to write new files / folders and potentially registry lines.

 

When Not to Use a Listing Page

All standard RBZ extensions should be hosted directly on the extension warehouse. This ensures a consistent user experience, a high level of quality and also simplifies extension management for everyone.

 

  • Paid for extensions can be hosted on the Extension Warehouse. Developers simply sign up to be a vendor and they are then able to sell as many extensions as they would like. Note: the vendor application form will ask for a Trimble person's email address. Use [email protected] for this.
  • External License Activation: Even if a developer chooses not to join the SketchUp's vendor program the extension can still be listed on Extension Warehouse. When creating the extension, the developer can include a license activation feature within its design. The license can then be purchased from a third party site by the end user if needed. This also allows developers to cover off scenarios such as subscription based licensing etc. (Please note, when using this method, the extension should not prompt users on startup. Instead, it should wait until they interact with the extension itself.)
  • Trial modes are also possible through Extension Warehouse. In fact, a user-friendly trial mode is encouraged to allow users to test the extension before purchase.
  • Faster Extension Reviews: SketchUp aims to review extensions within two business days, with exceptions during holidays and peak release times. A quicker review process is not a reason to use a listing page. It is expected that during an extension review there will be communication between SketchUp and the developer and this is necessary to ensure we meet the expected quality standards. This process should not cause direct delays unless there are any issues identified.
  • Custom Encryption: Some developers may choose to use custom encryption on their extension. This doesn’t stop it from being hosted on Extension Warehouse. SketchUp has runtime checks to identify common issues that our code review team lookout for. This means that we can still ensure these extensions meet our levels of quality.

 

Why We Want Code Reviews

Code reviews are crucial for maintaining high-quality extensions. They help to:

 

  • Improve security: Catching any potential vulnerabilities that could reduce a user's experience or cause harm to an end user's computers.
  • Enhance functionality: Ensure extensions work as the developer intended and integrate smoothly with both SketchUp and other extensions. 
  • Maintain consistency: Guarantee a consistent experience across all extensions such as the ability to use simple features like Un-do etc.

 

But What About The Others?

SketchUp is actively working to migrate existing listing pages fully to the Extension Warehouse whenever possible. The decision on where to host an extension is ultimately based on the technological needs as mentioned above, and not based on historical precedents.

 

We hope that with this outlook you will agree that we can raise the bar in terms of extension quality for our end users.

 

If you're unsure whether your extension requires a listing page, feel free to reach out to SketchUp for clarification.

 

 

Known Limitations

In its existing state, Extension Warehouse will list all extensions that aren't sold via the vendor program as "free". This means that even if a developer sells their licenses from a third party site, the extension itself will be listed as free on Extension Warehouse. For now extension developers need to clearly mark their extension description with details of its price in order to inform the end user before installation.