{"id":39025890,"url":"https://github.com/bamresearch/jupyter-integration","last_synced_at":"2026-01-17T17:32:40.552Z","repository":{"id":103184611,"uuid":"180394856","full_name":"BAMresearch/jupyter-integration","owner":"BAMresearch","description":"Configures Anaconda on Windows and associates double-click on .ipynb files with JupyterLab. To get version controlled Jupyter notebooks, it installs an extension to commit changes directly from JupyterLab, no command-line interaction necessary. |\u003e https://bamresearch.github.io/jupyter-integration |\u003e https://www.youtube.com/channel/UC0Jlyc60Nxc7FF_3Sjq8f6g","archived":false,"fork":false,"pushed_at":"2022-05-19T17:22:04.000Z","size":6585,"stargazers_count":3,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-09-09T13:51:10.094Z","etag":null,"topics":["git","ipynb","jupyter-notebook","jupyterlab","reproducibility","tortoisegit","version-control","versioning"],"latest_commit_sha":null,"homepage":"","language":"Batchfile","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/BAMresearch.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2019-04-09T15:15:55.000Z","updated_at":"2024-12-24T08:45:51.000Z","dependencies_parsed_at":null,"dependency_job_id":"40f914e2-7e00-45f6-a564-7b04cffdfc35","html_url":"https://github.com/BAMresearch/jupyter-integration","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/BAMresearch/jupyter-integration","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BAMresearch%2Fjupyter-integration","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BAMresearch%2Fjupyter-integration/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BAMresearch%2Fjupyter-integration/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BAMresearch%2Fjupyter-integration/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/BAMresearch","download_url":"https://codeload.github.com/BAMresearch/jupyter-integration/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/BAMresearch%2Fjupyter-integration/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":28513123,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-01-17T13:38:16.342Z","status":"ssl_error","status_checked_at":"2026-01-17T13:37:44.060Z","response_time":85,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"can_crawl_api":true,"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":["git","ipynb","jupyter-notebook","jupyterlab","reproducibility","tortoisegit","version-control","versioning"],"created_at":"2026-01-17T17:32:40.441Z","updated_at":"2026-01-17T17:32:40.530Z","avatar_url":"https://github.com/BAMresearch.png","language":"Batchfile","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Jupyter Git Scripts\r\n\r\nA collection of batch scripts helping with version controlled Jupyter\r\nnotebooks on Windows and associates double-click on `.ipynb` files with JupyterLab.\r\nInstalls an extension for GIT to commit changes on a notebook\r\ndirectly from JupyterLab, no command-line interaction necessary.\r\n\r\nThe scripts are intended to be run by restricted users\r\ntypically found in corporate computing environments.\r\n\r\n## Features\r\n\r\n### `Anaconda Update Script.bat`\r\n\r\n- Registers the Jupyter notebook file extension `.ipynb` so that a double-click\r\n  starts JupyterLab and opens the notebook.\r\n- Installs Jupyter extensions for interactive widgets (ipywidgets) in JupyterLab\r\n  and installs nodeJS which is required for that.\r\n- Installs GIT extension `jupyterlab_git` for JupyterLab.\r\n- Adds some TortoiseGit actions to the context menu for easier access (*diff*, *log*, *rename*, *delete*).\r\n- Updates the Anaconda Python distribution\r\n  and creates a log file of the process next to the scripts location.\r\n- Does not require admin rights.\r\n  (Assumes Anaconda is installed in the users home folder.)\r\n\r\n### `New Jupyter Project.bat`\r\n\r\n1. Presents a dialog asking the user for an empty project folder,\r\n   allows a new folder to be created.\r\n2. Initializes GIT in that project folder, using user name and email provided\r\n   by Windows via Active Directory.\r\n3. Sets up GIT with Jupyter notebook filtering (nbstripout) in that folder.\r\n4. Adds a copy of the notebook template *New Project Notebook.ipynb* from *config* folder.\r\n5. Adds configured GIT submodules as well.\r\n\r\n- Expects a config file *config\\local.conf* relative to the script location\r\n  with the following content:\r\n\r\n```\r\nNewProjectOrigin=https://\u003cyour GIT server\u003e/%USERNAME%\r\nNewProjectSubMods=https://\u003cyour GIT server\u003e/\u003csome subdir\u003e/jupyter_analysis_tools.git\r\n```\r\n\r\n### `Pull All Projects.bat`\r\n\r\nRecursively updates the current GIT repository and all submodules within from\r\nremote (server possibly) and checks out the latest master.\r\n\r\n### `Push All Projects.bat`\r\n\r\nRecursively sends the recent commits of the current GIT repository and all\r\nsubmodules within to the remote (server possibly).\r\n\r\n## Requirements\r\n\r\n- [Git for Windows](https://git-scm.com/download/win)\r\n- **optional**: [TortoiseGit](https://tortoisegit.org/download/)\r\n  (requires admin rights during install)\r\n- [Anaconda Python](https://www.anaconda.com/distribution/),\r\n  expected in default location for users (`%LOCALAPPDATA%`)\r\n\r\n## Terms of use\r\n\r\nPlease see the included *LICENSE* file.\r\nUse at your own risk!\r\n\r\n## Contact\r\n\r\nI am very much looking forward to your feedback!\r\nFeel free to use the issue tracker for requests or bug reports.\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbamresearch%2Fjupyter-integration","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbamresearch%2Fjupyter-integration","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbamresearch%2Fjupyter-integration/lists"}