{"action":"created","issue":{"url":"https://api.github.com/repos/jupyter-incubator/dashboards_server/issues/79","repository_url":"https://api.github.com/repos/jupyter-incubator/dashboards_server","labels_url":"https://api.github.com/repos/jupyter-incubator/dashboards_server/issues/79/labels{/name}","comments_url":"https://api.github.com/repos/jupyter-incubator/dashboards_server/issues/79/comments","events_url":"https://api.github.com/repos/jupyter-incubator/dashboards_server/issues/79/events","html_url":"https://github.com/jupyter-incubator/dashboards_server/issues/79","id":132547267,"number":79,"title":"Allow uploading of zip containing notebook with resources","user":{"login":"nitind","id":2684153,"avatar_url":"https://avatars.githubusercontent.com/u/2684153?v=3","gravatar_id":"","url":"https://api.github.com/users/nitind","html_url":"https://github.com/nitind","followers_url":"https://api.github.com/users/nitind/followers","following_url":"https://api.github.com/users/nitind/following{/other_user}","gists_url":"https://api.github.com/users/nitind/gists{/gist_id}","starred_url":"https://api.github.com/users/nitind/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/nitind/subscriptions","organizations_url":"https://api.github.com/users/nitind/orgs","repos_url":"https://api.github.com/users/nitind/repos","events_url":"https://api.github.com/users/nitind/events{/privacy}","received_events_url":"https://api.github.com/users/nitind/received_events","type":"User","site_admin":false},"labels":[{"url":"https://api.github.com/repos/jupyter-incubator/dashboards_server/labels/enhancement","name":"enhancement","color":"84b6eb"}],"state":"open","locked":false,"assignee":{"login":"jhpedemonte","id":711365,"avatar_url":"https://avatars.githubusercontent.com/u/711365?v=3","gravatar_id":"","url":"https://api.github.com/users/jhpedemonte","html_url":"https://github.com/jhpedemonte","followers_url":"https://api.github.com/users/jhpedemonte/followers","following_url":"https://api.github.com/users/jhpedemonte/following{/other_user}","gists_url":"https://api.github.com/users/jhpedemonte/gists{/gist_id}","starred_url":"https://api.github.com/users/jhpedemonte/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/jhpedemonte/subscriptions","organizations_url":"https://api.github.com/users/jhpedemonte/orgs","repos_url":"https://api.github.com/users/jhpedemonte/repos","events_url":"https://api.github.com/users/jhpedemonte/events{/privacy}","received_events_url":"https://api.github.com/users/jhpedemonte/received_events","type":"User","site_admin":false},"milestone":{"url":"https://api.github.com/repos/jupyter-incubator/dashboards_server/milestones/3","html_url":"https://github.com/jupyter-incubator/dashboards_server/milestones/0.3.0","labels_url":"https://api.github.com/repos/jupyter-incubator/dashboards_server/milestones/3/labels","id":1573524,"number":3,"title":"0.3.0","description":"","creator":{"login":"parente","id":153745,"avatar_url":"https://avatars.githubusercontent.com/u/153745?v=3","gravatar_id":"","url":"https://api.github.com/users/parente","html_url":"https://github.com/parente","followers_url":"https://api.github.com/users/parente/followers","following_url":"https://api.github.com/users/parente/following{/other_user}","gists_url":"https://api.github.com/users/parente/gists{/gist_id}","starred_url":"https://api.github.com/users/parente/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/parente/subscriptions","organizations_url":"https://api.github.com/users/parente/orgs","repos_url":"https://api.github.com/users/parente/repos","events_url":"https://api.github.com/users/parente/events{/privacy}","received_events_url":"https://api.github.com/users/parente/received_events","type":"User","site_admin":false},"open_issues":2,"closed_issues":10,"state":"open","created_at":"2016-02-09T22:02:11Z","updated_at":"2016-03-02T10:18:15Z","due_on":null,"closed_at":null},"comments":11,"created_at":"2016-02-09T21:55:03Z","updated_at":"2016-03-02T19:29:16Z","closed_at":null,"body":"The ability to upload a notebook to the dashboards server does not allow for resources to go with it, such as widget files and data. Allow a zip file to be uploaded and its resources unpacked and served without clobbering the resources of other notebooks.\r\n\r\n---\r\n\r\n**Structure:**  *[updated 2016-02-26]*\r\n\r\n```\r\n<notebook_name>/\r\n    index.ipynb\r\n    urth_components/\r\n        ...\r\n    stylesheet.css\r\n    image.jpg\r\n```\r\n\r\n---\r\n\r\n**Client/Server Tasks:**\r\n* [X] Support plain and bundled dashboards.\r\n    * Plain & bundled should look same in UI.\r\n    * Don't show `ipynb` extension.\r\n* [X] Support GET of bundled resources (everything but the notebook itself).\r\n* [x] Look for `index.ipynb` and always render for that dashboard for the dir, whether inside or outside of a \"bundled\" dashboard.\r\n    * Look for `index` instead of `__notebook__`\r\n* [x] Load declwidgets from within bundled dashboard\r\n* [x] Create example installable through Makefile. Should test declwidgets, loading of local resources (CSS, images, etc).\r\n* [x] Support POST of bundled dashboards into `data` dir\r\n* [ ] Create tests\r\n    * Test loading `index.ipynb` (with/without extension). We should **not** get full contents back.\r\n    * etc\r\n* [ ] Update README to describe use of `index.ipynb` in a dir and local resources."},"comment":{"url":"https://api.github.com/repos/jupyter-incubator/dashboards_server/issues/comments/191387316","html_url":"https://github.com/jupyter-incubator/dashboards_server/issues/79#issuecomment-191387316","issue_url":"https://api.github.com/repos/jupyter-incubator/dashboards_server/issues/79","id":191387316,"user":{"login":"parente","id":153745,"avatar_url":"https://avatars.githubusercontent.com/u/153745?v=3","gravatar_id":"","url":"https://api.github.com/users/parente","html_url":"https://github.com/parente","followers_url":"https://api.github.com/users/parente/followers","following_url":"https://api.github.com/users/parente/following{/other_user}","gists_url":"https://api.github.com/users/parente/gists{/gist_id}","starred_url":"https://api.github.com/users/parente/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/parente/subscriptions","organizations_url":"https://api.github.com/users/parente/orgs","repos_url":"https://api.github.com/users/parente/repos","events_url":"https://api.github.com/users/parente/events{/privacy}","received_events_url":"https://api.github.com/users/parente/received_events","type":"User","site_admin":false},"created_at":"2016-03-02T19:29:16Z","updated_at":"2016-03-02T19:29:16Z","body":"Yep. Live and learn. (And something tells me we'll be back here again if/when other people start looking at using it...)"}}