Extensions
  • Home
  • Add-ons
  • Themes
  • Approval Queue
  • About
  • Upload Extension
  • Sign in
  • BLENDER.ORG

    • Download

      Get the latest Blender, older versions, or experimental builds.

    • What's New

      Stay up-to-date with the new features in the latest Blender releases.

    DEVELOPMENT

    • Roadmap

      See which projects are currently being worked on and what's next.

    • Documentation

      Guidelines, release notes and development docs.

    LEARNING & RESOURCES

    • Blender Studio

      Access production assets and knowledge from the open movies.

    • Manual

      Documentation on the usage and features in Blender.

    • Benchmark

      A platform to collect and share results of the Blender Benchmark.

    • Blender Conference

      The yearly event that brings the community together.

    DONATE

    • Development Fund

      Support core development with a monthly contribution.

    • One-time Donations

      Perform a single donation with more payment options available.

Rated by 3DDinosaur

Add-on Time Theme Switcher
  • Time Theme Switcher v1.0.0
  • 4 h

Hi! I found an issue with Claude's hep, where the theme (light/dark) is not correctly reapplied when Blender is closed and reopened — even though load_post_handler is supposed to force a re-apply on load. The old theme colors stay in place until I manually click the "Refresh" button in the addon preferences, which does fix it immediately.

Looking at the code, I believe the problem is in apply_theme():

python try: with _context_temp_override(context_to_use, override): result = bpy.ops.script.execute_preset(...) except Exception: return False

bpy.ops.script.execute_preset is a UI operator and depends on a valid window/area/region context. During load_post (right at startup), the UI may not be fully ready yet, so this call can silently fail. Since the exception is caught with a bare except Exception: return False and nothing is logged, there's no way to know the apply failed.

This becomes worse combined with this check in apply_theme_for_current_time():

python if prefs.active_theme == desired_state and not force: return "skipped"

If active_theme was already set to the correct value from a previous session, and the startup apply silently fails, there's no automatic retry that would actually reapply the theme — since the timer's retry call doesn't use force=True, it just checks active_theme again and skips.

Suggestion: log the exception (e.g. print or self.report) instead of silently swallowing it, and/or don't trust active_theme as "already correct" until apply_theme() has actually returned True at least once in the current session. That would make it obvious when the startup apply fails and would let a proper retry happen.

Add-on Nodemap
  • Nodemap v1.0.0
  • 3 w

Simple and well made! Zooming on the mini map is a bit awkward as you lose sense of the framed view. Maybe add an option to force the view zoom so as the min map always encapsulates the entire framed view? Still very much useful as is, because the user might want o focus or pinpoint an specific area. **Frame labels are persisting even after turning labels off in options panel. Thank you! : )

  • n4dirp replied
  • 3 w

Thanks for the suggestions!

Add-on Geo Nodes Guide
  • Geo Nodes Guide v0.1.0
  • 1 mo

How about adding a click behavior with a with automatic 'swap' option? This way the active node can be the one on display. Hover is erratic and many times selects neighboring nodes or simply does not find what is under the cursor.

Add-on K-Tools: Mode Highlight
  • K-Tools: Mode Highlight v1.1.5
  • 1 mo

Excellent! Complete!!

Add-on OEBS Icon Viewer
  • OEBS Icon Viewer v1.4.0
  • 1 mo

Well organized!

Add-on Browser Scroll Resize
  • Browser Scroll Resize v1.0.2
  • 1 mo

Now I see the shortcut issue. For it to work seamlessly you should also register the operands in the 2d view keymap. Maybe to avoid conflict change them to ctrl+shift wheel... who uses ctrl wheel to navigate anything horizontally when default everywhere is shift... come on Blender! : D

Persistency is still an issue. Addon prefs are not getting saved between Blender sessions. A quick run through Claude below. Hope it helps. : )

Here's a summary of what needs to be fixed: Main fix: Move all properties from TBY_FBSR_prop (Scene-level) into AddonPreferences directly, so they persist in Blender's user preferences instead of per-scene data. 3 steps: Add all props as fields of TBY_BSR_Preferences_Panel and remove the TBY_FBSR_prop class entirely. In every operator, replace context.scene.tby_bsr_tool with context.preferences.addons[name].preferences. In unregister(), change bpy.types.Scene.tby_bsr_tool to del bpy.types.Scene.tby_bsr_tool. Remove undo and registration to avoid flooding info editor list with every mouse wheel flick.

bl_info = { "name": "Browser_Scroll_Resizer (BSR)", "author": "Barrunterio", "version": (1, 0, 2), "blender": (5, 2, 0), "location": "Add Shortcut Operation", "description": "Custom operation to resize content in the file browser using Alt + Scroll Mouse", "wiki_url": "", "category": "Interface"}

import bpy, rna_keymap_ui from bpy.types import AddonPreferences

---------------------------------------------------------------------------
Helper to get preferences from anywhere
---------------------------------------------------------------------------

def get_prefs(context): return context.preferences.addons[name].preferences

---------------------------------------------------------------------------
Display-type helpers
---------------------------------------------------------------------------

def display_type_to_thumbnail(context): prefs = get_prefs(context) context.space_data.params.display_type = 'THUMBNAIL' context.space_data.params.display_size = prefs.tby_bsr_min_thumbnail_display

def display_type_to_list_horizontal(context): context.space_data.params.display_type = 'LIST_HORIZONTAL'

def display_type_to_list_vertical(context): context.space_data.params.display_type = 'LIST_VERTICAL'

---------------------------------------------------------------------------
Preferences (persistent – stored in userpref.blend)
---------------------------------------------------------------------------

class TBY_BSR_Preferences_Panel(AddonPreferences): bl_idname = name

---------------------------------------------------------------------------
OPERATORS
---------------------------------------------------------------------------

class tby_interaction_increase(bpy.types.Operator): """Increase the size of Thumbnails on Asset and File Explorer""" bl_idname = "tbycontext.thumbnailsizeincrease" bl_label = "Increase file explorer size" bl_options = set()

class tby_interaction_decrease(bpy.types.Operator): """Decrease the size of file Viewer""" bl_idname = "tbycontext.thumbnailsizedecrease" bl_label = "Decrease file explorer size" bl_options = set()

class tby_interaction_increase_alt(bpy.types.Operator): """Increase the Column size of the Horizontal List in Asset Browser""" bl_idname = "tbycontext.hlist_thumbnailsizeincrease" bl_label = "Increase column size for Asset Browser" bl_options = set()

class tby_interaction_decrease_alt(bpy.types.Operator): """Decrease the Column size of Horizontal List in Asset Browser""" bl_idname = "tbycontext.hlist_thumbnailsizedecrease" bl_label = "Decrease column size for Asset Browser" bl_options = set()

---------------------------------------------------------------------------
Registration
---------------------------------------------------------------------------

classes = ( TBY_BSR_Preferences_Panel, tby_interaction_decrease, tby_interaction_increase, tby_interaction_increase_alt, tby_interaction_decrease_alt, )

addon_keymaps = []

def key(active, km, kmi): kmi.active = active addon_keymaps.append((km, kmi))

def register(): for cls in classes: bpy.utils.register_class(cls)

def unregister(): for km, kmi in addon_keymaps: km.keymap_items.remove(kmi) addon_keymaps.clear()

if name == "main": register()

  • Barrunterio replied
  • 1 mo

Hi 3D Dinnosaur, new version is out v1.0.6. I added some settings in the properties to better set defaults and quick change to a working solution, main alt for scrolling. Feel free to try it, and let me know your thoughts! :)

Add-on Quick Switch
  • Quick Switch v2.2.0
  • 1 mo

Despite the version limit, works fine in Blender 5.1

  • Silvie3D replied
  • 1 mo

Haha yeah, Haven't maintained this addon in a while. I've been working on 3-4 features for the next major update for this addon and release them all in the next version (compatible with 5.0+)

Add-on YL MeshCheckHUD
  • YL MeshCheckHUD v1.0.2
  • 1 mo

Simple and complete!

  • YLIANG replied
  • 1 mo

Glad it helps!

Add-on Icon Viewer
  • Icon Viewer v1.4.2
  • 2 mo

Practical! : )

Add-on 3MF Import/Export
  • 3MF Import/Export v2.4.4
  • 3 mo

Simple and powerful. And it does not requires you to convert from blender units/scale to have the correct object size on your slicer. Thank you!

  • Clonephaze replied
  • 3 mo

Thank you for the review! I'm glad the tool has been useful and convenient for you :)

Add-on Sync Material Viewport Color
  • Sync Material Viewport Color v1.0.2
  • 3 mo

How this is not a default toggle in Blender I can't imagine... Thank you!

Add-on Theme Property Finder
  • Theme Property Finder v1.0.0
  • 4 mo

Only now that I've just finished the main parts of my themes?! : D.. Thank you! This addon is great, so necessary!

  • Nanomanpro replied
  • 3 mo

Thanks for the review. Enjoy using it :)

Add-on Gizmo Resizer
  • Gizmo Resizer v2.3.0
  • 5 mo

HUD is not show in blender 5.1 though. Great tool : )

  • CorentinBileau replied
  • 5 mo

Hello! Blender 5.1 is still in alpha for now. Normally, this kind of issue should be fixed by the time the official version is released šŸ™‚ And thanks a lot for the rating!

Add-on K-Tools: Sync | Lock Viewport
  • K-Tools: Sync | Lock Viewport v2.7.0
  • 6 mo

This is too god! Thank you : )

Add-on Mio3 Flex
  • Mio3 Flex v1.0.3
  • 6 mo

This is great! : ) Add gizmo support / overlays?

Add-on Outliner Model Preview
  • Outliner Model Preview v1.0.8
  • 6 mo

This addon is great to help renaming objects later on : D. "1. Optimized Selection State for Hover Preview" seems not to be working properly. It show the mesh when the mouse hovers the outliner, but only the selected one.

  • Shuimeng replied
  • 6 mo

I’m very concerned about the issue you encountered. Could you please record a short video showing the problem and post it in my feedback channel so I can reproduce it?

Add-on Auto Sync Object Data Names
  • Auto Sync Object Data Names v1.0.0
  • 7 mo

Great handling of multi user meshes. Thankyou! : )

Add-on Snap Line Tool
  • Snap Line Tool v6.8.1
  • 11 mo

Not working properly on 4.5?

Theme Genuinely Disgusting
  • Genuinely Disgusting v1.0.1
  • 1 y

Got to say this is very useful to find that one hidden UI element you've been trying to customize.

Add-on Simple Deform Helper
  • Simple Deform Helper v0.2.7
  • 1 y

Genius! Absolutely essential! Thank you for this!

  • 1
  • 2
  • Next
  • Last
23 reviews
  • About
  • Privacy Policy
  • Terms of Service
About
  • Blender Foundation
  • Blender Institute
  • Blender Studio
  • License
  • Logo & Trademark
  • Credits
  • Privacy Policy
  • Code of Conduct
Organization
  • People
  • Jobs
Blender Network
Download
  • Latest Blender
  • Blender LTS
  • Previous Versions
  • Experimental Builds
  • Source Code
  • Requirements
  • Benchmark
  • Flamenco
Extensions
  • Add-ons
  • Themes
Developers
  • Get Started
  • Roadmap
  • Projects
  • Docs
  • Blog
  • Forum
  • YouTube
  • Python API
Blender Studio
  • Films
  • Training
  • Tools & Pipeline
Support
  • Manual
  • Community
  • FAQ
Get Involved
  • Documentation
  • Education
News
  • Press Releases
  • User Stories
Blender Conference
Follow Blender
Support Blender
  • Donate
  • One-time Donation
Artistic freedom starts with Blender The Free and Open Source 3D Creation Suite