{"id":21536951,"url":"https://github.com/jonassorgenfrei/nukepluginmanager","last_synced_at":"2025-04-10T02:11:20.314Z","repository":{"id":119319142,"uuid":"434411934","full_name":"jonassorgenfrei/NukePluginManager","owner":"jonassorgenfrei","description":"Manage Nuke Plugins by json files","archived":false,"fork":false,"pushed_at":"2022-05-15T23:22:30.000Z","size":11,"stargazers_count":7,"open_issues_count":1,"forks_count":2,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-10T02:10:33.082Z","etag":null,"topics":["foundry-nuke","nuke"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/jonassorgenfrei.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-12-03T00:01:23.000Z","updated_at":"2024-02-20T17:38:34.000Z","dependencies_parsed_at":null,"dependency_job_id":"8286f7ad-bda3-4893-9144-65b69b6871c0","html_url":"https://github.com/jonassorgenfrei/NukePluginManager","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonassorgenfrei%2FNukePluginManager","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonassorgenfrei%2FNukePluginManager/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonassorgenfrei%2FNukePluginManager/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/jonassorgenfrei%2FNukePluginManager/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/jonassorgenfrei","download_url":"https://codeload.github.com/jonassorgenfrei/NukePluginManager/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":248142905,"owners_count":21054671,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["foundry-nuke","nuke"],"created_at":"2024-11-24T03:23:19.953Z","updated_at":"2025-04-10T02:11:20.306Z","avatar_url":"https://github.com/jonassorgenfrei.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# NukePluginManager\n\nPlugin to Manage Nuke Plugins using json files without the need to touch any files like the init.py file \nfor testing and using nuke plugins.\n\n## Install\nJust download/clone the PluginManager and add the following code to ```\u003cuser home directory\u003e/.nuke/init.py```\n\n```\nimport sys\npathToPluginManager = PATH_TO_THE_PLUGIN_MANAGER_FOLDER # example: 'C:/Documents/Nuke/PluginManager'\nsys.path.append(pathToPluginManager)\nimport pluginManager\n\npluginManager.init(silent=False)\n```\n\nThe silent flag can be used to print the path of the loaded plugin directories at startup (if set to False).\n\n## Using\nTo add plugins just create a new json File (like the examples) in the plugin folder.\n\nExample json file structure:\n\n```\n{\n\t\"enable\": true,\n\t\"expessionEnvs\" : [],\n\t\"env\": [\n\t\t{\n\t\t\t\"\u003cNAME_OF_PLUGIN\u003e\": \"\u003cPATH_TO_PLUGIN\u003e\"\n\t\t}\n\t\t],\n\t\"plugin_path\": \"$\u003cNAME_OF_PLUGIN\u003e\"\n}\n```\n\nThe parsers adds all environment variables env to the environement Variables and adds the plugin (folder) at the plugin_path location.\n\nAll keys are optional.\n\n\n| Json Keys  | description |\n| --- | --- |\n| enable  | (boolean/string) Flag if the plugin should be enabled. Can be a simple expression like: nuke.NUKE_VERSION_MAJOR==13 |\n| expessionEnvs | (string) Python expresion which will be evaluated on runtime, eg. to determine the nuke version used |\n| env  | (list of dict with strings) Environment variables like the path to the plugin or multiple subpathes or other environment variables |\n| plugin_path  | (string) The path to the plugin which should be appended to the nuke plugin pathes |\n\nNote: if the environment key is PYTHONPATH, the value will be appended to the sys path on startup. \nThis way exteral libraries can be added on startup.\n\nNote: A definition can also be used to only add environment variables on start up. See: examplePlugins/env.json\n\n\n## Examples\nFor the example Plugins the corresponding websites can be found here:\n- Crypto Matte https://github.com/Psyop/Cryptomatte\n- DeepC https://github.com/charlesangus/DeepC\n- jsAssetBrowser https://github.com/jonassorgenfrei/AssetBrowser\n- RemoveCannels https://github.com/Ahuge/Nuke-RemoveChannels","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonassorgenfrei%2Fnukepluginmanager","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fjonassorgenfrei%2Fnukepluginmanager","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fjonassorgenfrei%2Fnukepluginmanager/lists"}