{"id":30524078,"url":"https://github.com/intake/intake-gsoc-gui","last_synced_at":"2025-08-26T20:52:43.301Z","repository":{"id":98751424,"uuid":"176362915","full_name":"intake/intake-gsoc-gui","owner":"intake","description":"Panel GUI project for GSOC","archived":false,"fork":false,"pushed_at":"2019-08-20T15:38:00.000Z","size":1455,"stargazers_count":3,"open_issues_count":2,"forks_count":3,"subscribers_count":6,"default_branch":"master","last_synced_at":"2024-05-08T20:04:06.514Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Jupyter Notebook","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/intake.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}},"created_at":"2019-03-18T20:19:09.000Z","updated_at":"2020-10-16T11:36:00.000Z","dependencies_parsed_at":"2023-05-25T03:45:41.499Z","dependency_job_id":null,"html_url":"https://github.com/intake/intake-gsoc-gui","commit_stats":{"total_commits":37,"total_committers":2,"mean_commits":18.5,"dds":"0.10810810810810811","last_synced_commit":"367c7b4d5c33bdc7c9178a0a0f158f56b1317772"},"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/intake/intake-gsoc-gui","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/intake%2Fintake-gsoc-gui","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/intake%2Fintake-gsoc-gui/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/intake%2Fintake-gsoc-gui/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/intake%2Fintake-gsoc-gui/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/intake","download_url":"https://codeload.github.com/intake/intake-gsoc-gui/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/intake%2Fintake-gsoc-gui/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":272254601,"owners_count":24901075,"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","status":"online","status_checked_at":"2025-08-26T02:00:07.904Z","response_time":60,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"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":[],"created_at":"2025-08-26T20:52:42.762Z","updated_at":"2025-08-26T20:52:43.278Z","avatar_url":"https://github.com/intake.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"Preliminary code for GSOC\n=========================\n\nIntroduction\n------------\n\nThe issue https://github.com/ESIPFed/gsoc/issues/14 contains a conversation around a possible\nproject for GSOC 2019, concerning interactive data visualisation in the context of \n[Intake](https://intake.readthedocs.io) and [PyViz](http://pyviz.org/index.html), under\nthe auspices of ESIP.\n\nThis repo contains a small amount of code as a starting point, and addresses only a part of the\nconcept, but one that students are likely not familiar with.\n\nThe Task\n--------\n\nTo form some familiarity with the tools and GUI interactivity with python in the browser,\nwe ask that potential students extend the code in this repo, via github PR. The goal is:\n\n- for the given data volume, to be able to select among the three axes of projection, XY, XZ, YZ\n- for each of those axes to be able to select any index of plane to show\n- to resize the plot axes to accurately reflect the current selection\n- (bonus) to provide a choice of colour-maps to render with (see \n  [palettes](https://bokeh.pydata.org/en/latest/docs/reference/palettes.html))\n- (bonus) to rewrite the code using [parameters](https://panel.pyviz.org/user_guide/Param.html)\n\nThe Existing Code\n-----------------\n\nThe file `app.py` contains the reference to be built upon. It sets up an interactive application which\nruns in a browser. `app.ipynb` contains the same code in a notebook. To run:\n```bash\npython app.py\n```\nor\n```bash\njupyter notebook app.ipynb\n```\n\nDependencies can be installed with the command\n```bash\nconda install -c conda-forge panel bokeh numpy scikit-image param notebook tornado=5\n```\n\nThe layout contains one button, which causes the `make()` function to be run every time, and flips\nthe image in the x-direction. In this version, the specific slice of the image being shown and the\ncolour-map are fixed.\n\nThe code is not meant to be an example of good design! It is just the simplest interaction that we\ncould come up with, demonstrating a Panel callback. To see a real example of a GUI being built with\nPanel, see [this PR](https://github.com/intake/intake/pull/286). If you work in the notebook, only\ncommit after clearing all the output cells.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fintake%2Fintake-gsoc-gui","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fintake%2Fintake-gsoc-gui","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fintake%2Fintake-gsoc-gui/lists"}