Giter Club home page Giter Club logo

napari.github.io's Issues

Dask Image transformation - Napari Development

Hi,

Currently I am working with images with size (25600, 49152, 3) px and I am trying to slice the image in smaller sizes to accelerate the computation. I am using napari for visualization, but after reading the documentation from dask I haven't come up with an acquire solution to slice the image in smaller dask arrays. What would be your suggestions?

Also, is it possible to use napari as the base for the image analysis tool that I am currently developing? I would like to include buttons and other user interface to facilitate the search and processing of the images.

Thanks in advance for your help,

confusion on napari console functionality

In trying the tutorial, it was not clear to me that the console was only available if napari is launched from bash. More clear documentation would be an okay choice on addressing this, but it would be fantastic if the console button is greyed out or removed when napari is started in ipython or a jupyter notebook - or a pop-up telling the user that the console is only available when napari is launched from bash.

signing up with en invalid email sometimes causes page to jump

from October 2021 pre-launch bug bash

Created by: Kira Evans

Description

how to reproduce (on iPad):

  1. load https://staging.napari-hub.org/plugins/napari-btrack-reader or any other plugin page
  2. click "Installation" to navigate to that header (link should be https://staging.napari-hub.org/plugins/napari-btrack-reader#installation)
  3. click subscribe on the signup form with an invalid email
  4. your page will scroll back to the Installation header

this does not occur with valid emails and I cannot reproduce on Desktop

Info

Bug source: unknown

Browser: Safari, Firefox, Edge, Chrome

PR: none

Attachments

Links to hosted docs

We need to put in links to our hosted docs / api reference.

We also need to put in doc string snippets into our layer tutorials

Refining of functional breakpoints needed

from October 2021 pre-launch bug bash

Created by: Lia

Description

Since the breakpoints that exist exclusively for the home page are based on the width that things are rendered, they need a little refining since the rendering of some elements in HTML is not exactly the same as the design (i.e. spacing between bullet disc and bullet text, etc). This is fine, but slightly affects the point at which the breakpoint itself should occur.

Work with Lia to refine. Dependent on #66 being completed first

Info

Bug source: <875px

Browser: unknown

PR: none

Attachments

https://dl.airtable.com/.attachments/e9db5ba7de6fd2a90f43b1d42583e77e/29a11dd5/ScreenShot2021-06-16at3.31.43PM.png

idea: napari.org link in footer

from October 2021 pre-launch bug bash

Created by: Nathan Clack

Description

I had a moment of confusion seeing "napari hub" in the footer. I expected "napari.org" to be there. Adding a "napari.org" link back to the root page in the footer might be expected by some users and might help further distinguish napari.org from the hub.

Info

Bug source: unknown

Browser: ipad chrome. appears in other browsers

PR: none

Attachments

Hyperlink doesn't work

So, I was browsing through your website napari.org/tutorials and I saw the urls for getting started section do not work. It is not a major issue and the links at the bottom of the page under fundamentals work but I just wanted to let you know.

search param isn't added to URL for empty string searches

from October 2021 pre-launch bug bash

Created by: Allen

Description

When searching for the empty string, "", the search parameter is not added to the URL. I consider this a design issue rather than a functionality issue.

Info

Bug source: unknown

Browser: unknown

PR: none

Attachments

Link to videos of napari talks and tutorials available on the web

I think it would be good to have a page to put the links to videos of napari talks elsewhere. There's starting to be quite the list. Here is a (very incomplete) list of napari talks & tutorials previously given.

In reverse chronological order...

TALKS

TUTORIALS

  • The I2K napari tutorial (I don't think the recording is up online, maybe we could follow up with the organisers?)
  • Multi-dimensional image visualization in Python using napari [NEUBIAS Academy@Home] webinar 2020 https://www.youtube.com/watch?v=VgvDSq5aCDQ

Error messages at https://napari.org/tutorials/

Getting to the tutorial landing page https://napari.org/tutorials/, one currently sees:
image
I guess there is a bug somewhere.

And just some ideas:
I don't know what framework you use for rendering the docs, but I have made wonderful experiences with readthedocs where users can see different doc versions from different releases:
image
One can even see docs from pull requests that are build at readthedocs servers with sphinx.
And with the plugin nbsphinx, one only has to write and commit some Jupyter notebooks, that are then automatically rendered to web-page tutorials.
Probably you are using other tools that are not compatible with that workflow, but maybe it might be useful.

Link Checker Report

Errors were reported while checking the availability of links.


📝 Summary
---------------------
🔍 Total.........1100
✅ Successful.....960
⏳ Timeouts.........0
🔀 Redirected.......0
👻 Excluded.........0
⚠ Unknown..........0
🚫 Errors.........140

Errors in tutorials/applications/cell_tracking.md
✗ file:///github/workspace/tutorials/fundamentals/tracks (Cannot find file file:///github/workspace/tutorials/fundamentals/tracks)

Errors in roadmaps/0_3_retrospective.md
✗ file:///github/workspace/roadmaps/GOVERNANCE.md (Cannot find file file:///github/workspace/roadmaps/GOVERNANCE.md)
✗ file:///github/workspace/roadmaps/CONTRIBUTING.md (Cannot find file file:///github/workspace/roadmaps/CONTRIBUTING.md)
✗ file:///github/workspace/roadmaps/ROADMAP_0_4.md (Cannot find file file:///github/workspace/roadmaps/ROADMAP_0_4.md)
✗ https://napari.org/docs/dev/events/perfmon.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/dev/events/perfmon.html))
✗ file:///github/workspace/roadmaps/MISSION_AND_VALUES.md (Cannot find file file:///github/workspace/roadmaps/MISSION_AND_VALUES.md)

Errors in README.md
✗ http://localhost:8080/ (error sending request for url (http://localhost:8080/): error trying to connect: tcp connect error: Cannot assign requested address (os error 99))
✗ actions/[email protected] (Unreachable mail address: actions/[email protected])

Errors in tutorials/fundamentals/vectors.md
✗ file:///github/workspace/tutorials/fundamentals/getting_started (Cannot find file file:///github/workspace/tutorials/fundamentals/getting_started)
✗ file:///github/workspace/tutorials/fundamentals/viewer (Cannot find file file:///github/workspace/tutorials/fundamentals/viewer)
✗ file:///github/workspace/tutorials/gallery (Cannot find file file:///github/workspace/tutorials/gallery)
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)

Errors in tutorials/fundamentals/points.md
✗ http://vispy.org/color.html#vispy.color.Colormap (HTTP status client error (404 Not Found) for url (https://vispy.org/color.html))
✗ file:///github/workspace/tutorials/fundamentals/viewer (Cannot find file file:///github/workspace/tutorials/fundamentals/viewer)
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)
✗ file:///github/workspace/tutorials/applications/annotate_points (Cannot find file file:///github/workspace/tutorials/applications/annotate_points)
✗ file:///github/workspace/tutorials/fundamentals/shapes (Cannot find file file:///github/workspace/tutorials/fundamentals/shapes)
✗ file:///github/workspace/tutorials/fundamentals/getting_started (Cannot find file file:///github/workspace/tutorials/fundamentals/getting_started)

Errors in tutorials/fundamentals/labels.md
✗ file:///github/workspace/tutorials/fundamentals/points (Cannot find file file:///github/workspace/tutorials/fundamentals/points)
✗ file:///github/workspace/tutorials/fundamentals/viewer (Cannot find file file:///github/workspace/tutorials/fundamentals/viewer)
✗ file:///github/workspace/tutorials/fundamentals/image (Cannot find file file:///github/workspace/tutorials/fundamentals/image)
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)
✗ file:///github/workspace/tutorials/fundamentals/getting_started (Cannot find file file:///github/workspace/tutorials/fundamentals/getting_started)

Errors in community/mission_and_values.md
✗ file:///github/workspace/community/CODE_OF_CONDUCT.md (Cannot find file file:///github/workspace/community/CODE_OF_CONDUCT.md)
✗ file:///github/workspace/community/CORE_DEV_GUIDE.md (Cannot find file file:///github/workspace/community/CORE_DEV_GUIDE.md)
✗ file:///github/workspace/community/GOVERNANCE (Cannot find file file:///github/workspace/community/GOVERNANCE)

Errors in tutorials/applications/napari_imageJ.md
✗ https://forum.image.sc/t/read-images-with-imagej-display-them-with-napari/32156 (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/t/read-images-with-imagej-display-them-with-napari/32156))
✗ https://forum.image.sc/u/ctrueden (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/u/ctrueden))
✗ https://forum.image.sc/ (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/))

Errors in release/release_0_3_5.md
✗ https://napari.org/docs/explanations/rendering.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/explanations/rendering.html))

Errors in community/code_of_conduct.md
✗ https://github.com/kne42 (HTTP status client error (429 Too Many Requests) for url (https://github.com/kne42))
✗ https://github.com/jni (HTTP status client error (429 Too Many Requests) for url (https://github.com/jni))
✗ https://github.com/csweaver (HTTP status client error (429 Too Many Requests) for url (https://github.com/csweaver))
✗ https://www.numpy.org/devdocs/dev/conduct/code_of_conduct.html (HTTP status client error (404 Not Found) for url (https://numpy.org/devdocs/dev/conduct/code_of_conduct.html))
✗ https://github.com/sofroniewn (HTTP status client error (429 Too Many Requests) for url (https://github.com/sofroniewn))

Errors in _templates/page.html
✗ file:///github/workspace/_templates/%7B%7B%20pathto('_sources',%201)%20%7D%7D/%7B%7B%20ipynb_source%20%7D%7D (Cannot find file file:///github/workspace/_templates/%7B%7B%20pathto('_sources',%201)%20%7D%7D/%7B%7B%20ipynb_source%20%7D%7D)

Errors in release/release_0_3_0.md
✗ https://napari.org/docs/plugins/for_plugin_developers.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/plugins/for_plugin_developers.html))
✗ https://napari.org/docs/plugins/index.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/plugins/index.html))
✗ https://forum.image.sc/ (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/))
✗ https://napari.org/docs/developers/GOVERNANCE.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/developers/GOVERNANCE.html))
✗ https://forum.image.sc/t/integration-of-napari-module-subclass-plugin/36018/2 (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/t/integration-of-napari-module-subclass-plugin/36018/2))
✗ https://napari.org/docs/developers.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/developers.html))
✗ https://napari.org/docs/developers/ROADMAP_0_3.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/developers/ROADMAP_0_3.html))
✗ https://napari.org/docs/developers/MISSION_AND_VALUES.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/developers/MISSION_AND_VALUES.html))
✗ https://napari.org/docs/developers/CODE_OF_CONDUCT.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/developers/CODE_OF_CONDUCT.html))
✗ https://forum.image.sc/tags/napari (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/tags/napari))

Errors in tutorials/fundamentals/viewer.md
✗ file:///github/workspace/tutorials/fundamentals/getting_started (Cannot find file file:///github/workspace/tutorials/fundamentals/getting_started)
✗ file:///github/workspace/tutorials/fundamentals/image (Cannot find file file:///github/workspace/tutorials/fundamentals/image)
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)

Errors in developers/core_dev_guide.md
✗ file:///github/workspace/developers/GOVERNANCE.md (Cannot find file file:///github/workspace/developers/GOVERNANCE.md)
✗ file:///github/workspace/developers/CODE_OF_CONDUCT.md (Cannot find file file:///github/workspace/developers/CODE_OF_CONDUCT.md)
✗ file:///github/workspace/developers/BENCHMARKS.md (Cannot find file file:///github/workspace/developers/BENCHMARKS.md)
✗ https://github.com/orgs/napari/teams/core-devs (404 Not Found: Not Found)
✗ https://forum.image.sc/tags/napari (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/tags/napari))
✗ file:///github/workspace/developers/MISSION_AND_VALUES.md (Cannot find file file:///github/workspace/developers/MISSION_AND_VALUES.md)
✗ file:///github/workspace/developers/CONTRIBUTING.md (Cannot find file file:///github/workspace/developers/CONTRIBUTING.md)

Errors in tutorials/fundamentals/shapes.md
✗ file:///github/workspace/tutorials/fundamentals/surface (Cannot find file file:///github/workspace/tutorials/fundamentals/surface)
✗ file:///github/workspace/tutorials/fundamentals/getting_started (Cannot find file file:///github/workspace/tutorials/fundamentals/getting_started)
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)
✗ file:///github/workspace/tutorials/fundamentals/viewer (Cannot find file file:///github/workspace/tutorials/fundamentals/viewer)

Errors in index.md
✗ file:///github/workspace/developers/code_of_conduct.md (Cannot find file file:///github/workspace/developers/code_of_conduct.md)
✗ https://forum.image.sc/tag/napari (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/tag/napari))
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)
✗ https://github.com/orgs/napari/teams/steering-council (404 Not Found: Not Found)
✗ file:///github/workspace/developers/governance.md (Cannot find file file:///github/workspace/developers/governance.md)
✗ https://github.com/orgs/napari/teams/core-devs (404 Not Found: Not Found)
✗ https://github.com/napari/napari.git (404 Not Found: Not Found)
✗ https://forum.image.sc/tags/napari (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/tags/napari))

Errors in tutorials/fundamentals/tracks.md
✗ file:///github/workspace/tutorials/fundamentals/getting_started (Cannot find file file:///github/workspace/tutorials/fundamentals/getting_started)
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)
✗ file:///github/workspace/tutorials/fundamentals/viewer (Cannot find file file:///github/workspace/tutorials/fundamentals/viewer)

Errors in community/governance.md
✗ https://github.com/jni (HTTP status client error (429 Too Many Requests) for url (https://github.com/jni))
✗ file:///github/workspace/community/MISSION_AND_VALUES.md (Cannot find file file:///github/workspace/community/MISSION_AND_VALUES.md)
✗ https://github.com/orgs/napari/teams/core-devs (404 Not Found: Not Found)
✗ https://github.com/orgs/napari/teams/steering-council (404 Not Found: Not Found)
✗ file:///github/workspace/community/CONTRIBUTING.md (Cannot find file file:///github/workspace/community/CONTRIBUTING.md)
✗ file:///github/workspace/community/CORE_DEV_GUIDE.md (Cannot find file file:///github/workspace/community/CORE_DEV_GUIDE.md)
✗ https://github.com/napari/ (404 Not Found: Not Found)
✗ https://github.com/royerloic (HTTP status client error (429 Too Many Requests) for url (https://github.com/royerloic))
✗ https://forum.image.sc/tags/napari (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/tags/napari))

Errors in developers/contributing.md
✗ file:///github/workspace/developers/CODE_OF_CONDUCT.md (Cannot find file file:///github/workspace/developers/CODE_OF_CONDUCT.md)
✗ https://github.com/your-username/napari.git (404 Not Found: Not Found)
✗ file:///github/workspace/guides/translations.md (Cannot find file file:///github/workspace/guides/translations.md)
✗ https://github.com/settings/emails (404 Not Found: Not Found)
✗ file:///github/workspace/developers/TESTING.md (Cannot find file file:///github/workspace/developers/TESTING.md)

Errors in ORGANIZATION.md
✗ https://myst-parser.readthedocs.io/en/latest/using/howto.html#include-a-file-from-outside-the-docs-folder-like-readme-md (HTTP status client error (404 Not Found) for url (https://myst-parser.readthedocs.io/en/latest/using/howto.html#include-a-file-from-outside-the-docs-folder-like-readme-md))

Errors in plugins/stable/find-and-install-plugin.md
✗ file:///github/workspace/plugins/images/plugin-menu.png (Cannot find file file:///github/workspace/plugins/images/plugin-menu.png)
✗ file:///github/workspace/plugins/images/plugin-install-dialog.png (Cannot find file file:///github/workspace/plugins/images/plugin-install-dialog.png)

Errors in roadmaps/0_3.md
✗ file:///github/workspace/roadmaps/GOVERNANCE.md (Cannot find file file:///github/workspace/roadmaps/GOVERNANCE.md)
✗ file:///github/workspace/roadmaps/CONTRIBUTING.md (Cannot find file file:///github/workspace/roadmaps/CONTRIBUTING.md)
✗ file:///github/workspace/roadmaps/MISSION_AND_VALUES.md (Cannot find file file:///github/workspace/roadmaps/MISSION_AND_VALUES.md)

Errors in tutorials/fundamentals/installation.md
✗ https://forum.image.sc/tags/napari (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/tags/napari))
✗ git+https://github.com/napari/napari.git#egg=napari[all] (404 Not Found: Not Found)
✗ file:///github/workspace/tutorials/fundamentals/getting_started (Cannot find file file:///github/workspace/tutorials/fundamentals/getting_started)

Errors in roadmaps/0_4.md
✗ file:///github/workspace/roadmaps/GOVERNANCE.md (Cannot find file file:///github/workspace/roadmaps/GOVERNANCE.md)
✗ https://napari.org/docs/dev/developers/ROADMAP_0_3_retrospective.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/dev/developers/ROADMAP_0_3_retrospective.html))
✗ file:///github/workspace/roadmaps/CONTRIBUTING.md (Cannot find file file:///github/workspace/roadmaps/CONTRIBUTING.md)
✗ file:///github/workspace/roadmaps/MISSION_AND_VALUES.md (Cannot find file file:///github/workspace/roadmaps/MISSION_AND_VALUES.md)

Errors in theme/napari/page.html
✗ http://localhost:3000/@react-refresh (error sending request for url (http://localhost:3000/@react-refresh): error trying to connect: tcp connect error: Cannot assign requested address (os error 99))
✗ file:///github/workspace/theme/napari/%7B%7B%20pathto('_static/documentation_options.js',%201)%20%7D%7D (Cannot find file file:///github/workspace/theme/napari/%7B%7B%20pathto('_static/documentation_options.js',%201)%20%7D%7D)
✗ file:///github/workspace/theme/napari/%7B%7B%20pathto('_static/dist/napari-theme.iife.js',%201)%20%7D%7D (Cannot find file file:///github/workspace/theme/napari/%7B%7B%20pathto('_static/dist/napari-theme.iife.js',%201)%20%7D%7D)
✗ file:///github/workspace/theme/napari/%7B%7B%20pathto(css,%201)|e%20%7D%7D (Cannot find file file:///github/workspace/theme/napari/%7B%7B%20pathto(css,%201)|e%20%7D%7D)
✗ http://localhost:3000/src/main.tsx (error sending request for url (http://localhost:3000/src/main.tsx): error trying to connect: tcp connect error: Cannot assign requested address (os error 99))
✗ file:///github/workspace/theme/napari/%7B%7B%20pathto('_static/favicon.ico',%201)%20%7D%7D (Cannot find file file:///github/workspace/theme/napari/%7B%7B%20pathto('_static/favicon.ico',%201)%20%7D%7D)
✗ file:///github/workspace/theme/napari/%7B%7B%20pathto('_static/dist/napari-theme.es.js',%201)%20%7D%7D (Cannot find file file:///github/workspace/theme/napari/%7B%7B%20pathto('_static/dist/napari-theme.es.js',%201)%20%7D%7D)
✗ https://git.io/JzpGL (HTTP status client error (429 Too Many Requests) for url (https://github.com/pradyunsg/furo/blob/5cdb35c041dabc6dc651cbd4b2f84226f2d24528/src/furo/theme/furo/base.html#L51-L72))
✗ http://localhost:3000/@vite/client (error sending request for url (http://localhost:3000/@vite/client): error trying to connect: tcp connect error: Cannot assign requested address (os error 99))
✗ file:///github/workspace/theme/napari/%7B%7B%20pathto('_static/pygments.css',%201)%20%7D%7D (Cannot find file file:///github/workspace/theme/napari/%7B%7B%20pathto('_static/pygments.css',%201)%20%7D%7D)

Errors in tutorials/fundamentals/surface.md
✗ file:///github/workspace/tutorials/fundamentals/viewer (Cannot find file file:///github/workspace/tutorials/fundamentals/viewer)
✗ http://vispy.org/color.html#vispy.color.Colormap (HTTP status client error (404 Not Found) for url (https://vispy.org/color.html))
✗ file:///github/workspace/tutorials/fundamentals/image (Cannot find file file:///github/workspace/tutorials/fundamentals/image)
✗ file:///github/workspace/tutorials/fundamentals/getting_started (Cannot find file file:///github/workspace/tutorials/fundamentals/getting_started)
✗ file:///github/workspace/tutorials/fundamentals/vectors (Cannot find file file:///github/workspace/tutorials/fundamentals/vectors)
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)

Errors in tutorials/index.md
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)
✗ https://forum.image.sc/tags/napari (HTTP status client error (403 Forbidden) for url (https://forum.image.sc/tags/napari))
✗ file:///github/workspace/tutorials/gallery (Cannot find file file:///github/workspace/tutorials/gallery)
✗ file:///github/workspace/tutorials/fundamentals/getting_started (Cannot find file file:///github/workspace/tutorials/fundamentals/getting_started)

Errors in guides/stable/magicgui.md
✗ file:///github/workspace/guides/plugins/index.md (Cannot find file file:///github/workspace/guides/plugins/index.md)

Errors in tutorials/fundamentals/image.md
✗ file:///github/workspace/tutorials/fundamentals/viewer (Cannot find file file:///github/workspace/tutorials/fundamentals/viewer)
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)
✗ file:///github/workspace/tutorials/fundamentals/getting_started (Cannot find file file:///github/workspace/tutorials/fundamentals/getting_started)
✗ http://vispy.org/color.html#vispy.color.Colormap (HTTP status client error (404 Not Found) for url (https://vispy.org/color.html))
✗ file:///github/workspace/tutorials/fundamentals/labels (Cannot find file file:///github/workspace/tutorials/fundamentals/labels)

Errors in tutorials/fundamentals/getting_started.md
✗ file:///github/workspace/tutorials/fundamentals/viewer (Cannot find file file:///github/workspace/tutorials/fundamentals/viewer)
✗ file:///github/workspace/tutorials/fundamentals/installation (Cannot find file file:///github/workspace/tutorials/fundamentals/installation)

Errors in community/team.md
✗ https://github.com/jni (HTTP status client error (429 Too Many Requests) for url (https://github.com/jni))
✗ https://github.com/ziyangczi (HTTP status client error (429 Too Many Requests) for url (https://github.com/ziyangczi))
✗ https://github.com/justinelarsen (HTTP status client error (429 Too Many Requests) for url (https://github.com/justinelarsen))
✗ https://github.com/kne42 (HTTP status client error (429 Too Many Requests) for url (https://github.com/kne42))
✗ https://github.com/AhmetCanSolak (HTTP status client error (429 Too Many Requests) for url (https://github.com/AhmetCanSolak))
✗ https://github.com/royerloic (HTTP status client error (429 Too Many Requests) for url (https://github.com/royerloic))
✗ https://github.com/sofroniewn (HTTP status client error (429 Too Many Requests) for url (https://github.com/sofroniewn))
✗ https://github.com/GenevieveBuckley (HTTP status client error (429 Too Many Requests) for url (https://github.com/GenevieveBuckley))
✗ https://github.com/kevinyamauchi (HTTP status client error (429 Too Many Requests) for url (https://github.com/kevinyamauchi))
✗ https://github.com/tlambert03 (HTTP status client error (429 Too Many Requests) for url (https://github.com/tlambert03))
✗ https://github.com/alisterburt (HTTP status client error (429 Too Many Requests) for url (https://github.com/alisterburt))

Errors in release/release_0_4_3.md
✗ https://napari.org/docs/dev/developers/ROADMAP_0_4.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/dev/developers/ROADMAP_0_4.html))
✗ https://napari.org/docs/dev/events/rendering.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/dev/events/rendering.html))
✗ https://napari.org/docs/dev/developers/ROADMAP_0_3_retrospective.html (HTTP status client error (404 Not Found) for url (https://napari.org/docs/dev/developers/ROADMAP_0_3_retrospective.html))

Full Github Actions output

Installation tutorial - add info on how to choose pyside/pyqt backends

It would be good to include information in the installation tutorial about choosing different backends for napari (pyside2/pyqt5).

There is an open issue at napari/napari#704 which discusses how we should use pip extras for this. The leading current suggestion is this napari/napari#704 (comment):

pip install napari -> get PySide2
pip install napari[pyqt] or pip install napari[pyqt5] -> get PyQt5
pip install napari[pyside] or pip install napari[pyside2] -> get PySide2

When this is settled in the main napari repository, I'd suggest adding a short section on choosing different backends, maybe just before the section on troubleshooting in napari-tutorials/tutorials/installation.md.

add "back to search results" button

from October 2021 pre-launch bug bash

Created by: unknown

Description

No description

Info

Bug source: unknown

Browser: unknown

PR: none

Attachments

Downloadable code snippets

It might be nice if some of our longer, self contained examples were downloadable as code snippets that people could run as scripts to reproduce the examples.

Remove notebook error caused by comment following ipython magic

We want to remove this notebook error.

2021-03-02-napari-tutorials-invalid-gui-request

I think it's caused by the comment immediately following ipython magic. We could try to either:

  1. Put the comment on a line by itself, before the %gui qt magic, OR
  2. Put text of the commend into a markdown cell (I do think we need to explain why this magic is there)

Radio button vertical spacing too tall

from October 2021 pre-launch bug bash

Created by: Lia

Description

The vertical spacing between the radio buttons + their labels is to tall compared to design

Info

Bug source: on wider than mobile sizes

Browser: Chrome

PR: none

Attachments

Partial SCSS updates not picked up by dev server

Background

Currently the dev server doesn't pick up changes made to partial SCSS files like _app-bar.scss. This is because:

  1. Gulp is only watching for non-partial SCSS files:
    scss: './theme/scss/[!_]*.scss',

    gulp.watch(paths.scss, scss);
  2. Gulp rebuilds files iteratively using since:
    .src(paths.scss, { since: gulp.lastRun(scss) })
  3. Gulp doesn't detect changes to import dependencies like a bundler would

Possible Solutions

  1. Remove the since and watch for non-partial SCSS files
  2. Switch to a bundler
  3. Implement some custom logic for watching partials

I think (1) will be the quickest solution, but (2) would be the most efficient since bundlers were designed for handling dependencies between assets.

Workaround

  1. Save the partial SCSS file (i.e. _app-bar.scss)
  2. Save the non-partial SCSS file importing the partial you updated (i.e. main.scss)

Failing CI

Our continuous integration checks are failing (noticed on a recent PR that made no code changes, just updated the user instructions #128).

The logs seem to suggest that a flaky X11 connection is to blame:

WARNING: The X11 connection broke: I/O error (code 1)
XIO:  fatal IO error 0 (Success) on X server ":0"
      after 3379 requests (3356 known processed) with 0 events remaining.
Error: Process completed with exit code 1.

Someone else also suggested that maybe the test failures could be due to deprecation of other packages like pytest.

Multiple images

Great work, thanks for your effots! I'm not sure if it fits within your plans for napari but it would be great to display multiple images at specified x-y-z points utilizing the gpu.

It would be great to customize embedding projector-like visualizations.

Tornado error & Qt warning visible in tutorials documentation

Currently, there is:

  1. A Qt warning, and
  2. A tornado error
    ... in the first page of the napari tutorials website (so, it's probably on every other page too)

See:

Details:
WARNING: QStandardPaths: XDG_RUNTIME_DIR not set, defaulting to '/tmp/runtime-runner'

ERROR:tornado.general:Uncaught exception in ZMQStream callback
Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/site-packages/zmq/eventloop/zmqstream.py", line 431, in _run_callback
    callback(*args, **kwargs)
  File "/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/site-packages/jupyter_client/threaded.py", line 121, in _handle_recv
    msg_list = self.ioloop._asyncio_event_loop.run_until_complete(get_msg(future_msg))
  File "/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/asyncio/base_events.py", line 592, in run_until_complete
    self._check_running()
  File "/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/asyncio/base_events.py", line 554, in _check_running
    raise RuntimeError(
RuntimeError: Cannot run the event loop while another loop is running
ERROR:tornado.general:Uncaught exception in zmqstream callback
Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/site-packages/zmq/eventloop/zmqstream.py", line 448, in _handle_events
    self._handle_recv()
  File "/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/site-packages/zmq/eventloop/zmqstream.py", line 477, in _handle_recv
    self._run_callback(callback, msg)
  File "/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/site-packages/zmq/eventloop/zmqstream.py", line 431, in _run_callback
    callback(*args, **kwargs)
  File "/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/site-packages/jupyter_client/threaded.py", line 121, in _handle_recv
    msg_list = self.ioloop._asyncio_event_loop.run_until_complete(get_msg(future_msg))
  File "/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/asyncio/base_events.py", line 592, in run_until_complete
    self._check_running()
  File "/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/asyncio/base_events.py", line 554, in _check_running
    raise RuntimeError(
RuntimeError: Cannot run the event loop while another loop is running
/opt/hostedtoolcache/Python/3.8.11/x64/lib/python3.8/site-packages/napari/utils/events/event.py:444: RuntimeWarning: coroutine 'get_msg' was never awaited
  for ri, criteria in enumerate((before, after)):
RuntimeWarning: Enable tracemalloc to get the object allocation traceback

image

purge git history

Right now the git is taking around 600M to track history, checking out the code is quite slow, we should try to clean up some of the histories to speed it up

Chips don't quite match design

from October 2021 pre-launch bug bash

Created by: Lia

Description

A little too tall
Not right color grey (too dark)
Not enough space between end of “x” and end of chip

Info

Bug source: All

Browser: Chrome

PR: none

Attachments

Documentation: review and fix typos/broken links

Hi folks,

At the last Documentation working group meeting we talked about checking a few documents for typos, inconsistencies and broken links. A few pages will need changing due to the Docs reorganization work (see #176), but the following are likely to stay the same, and so can be worked on.

License filter options for the common licenses

from October 2021 pre-launch bug bash

Created by: Allen

Description

License filter options for the common licenses people want to exclusively use (e.g. GNU General Public License)

Info

Bug source: unknown

Browser: unknown

PR: none

Attachments

Vertical spacing between radio + label is too large on wide screens

from October 2021 pre-launch bug bash

Created by: Jeremy

Description

One tiny thing I am adding now, but can be done for bug bash (or later, if not triaged for bug bash time):The vertical spacing between the radio buttons + their labels (on wider than mobile sizes) is a little too tall.

Info

Bug source: >875

Browser: All Browsers

PR: none

Attachments

https://dl.airtable.com/.attachments/f4afb407ff0428cc149d7c87e90fff82/fbca0571/image.png

"Install" button text should be semi-bold

from October 2021 pre-launch bug bash

Created by: Lia

Description

Currently regular weight; applies to Install button at top / right margin and at bottom

Info

Bug source: All

Browser: Chrome + Safari

PR: none

Attachments

Semantic line breaks in docs

I was looking through the tutorial files after running codespell in the main repo.

I think it could be easier to maintain/view the markdown files if semantic line breaks were used (new lines after period or comma etc). Currently each "paragraph" is on a single line. The output would be the same.

This will make it easier to identify the changes in a given commit since the lines are much shorter.

Ex:

The input data to the vectors layer must either be a Nx2xD numpy array representing N vectors with start position and projection values in D dimensions, or it must be an N1xN2 ... xNDxD, array where each of the first D dimensions corresponds to the voxel of the location of the vector, and the last dimension contains the D values of the projection of that vector. The former representation is useful when you have vectors that can start in arbitrary positions in the canvas. The latter representation is useful when your vectors are defined on a grid, say corresponding to the voxels of an image, and you have one vector per grid.

could be

The input data to the vectors layer must either be a Nx2xD numpy array representing N vectors with start position and projection values in D dimensions,
or it must be an N1xN2 ... xNDxD, array where each of the first D dimensions corresponds to the voxel of the location of the vector,
and the last dimension contains the D values of the projection of that vector.
The former representation is useful when you have vectors that can start in arbitrary positions in the canvas.
The latter representation is useful when your vectors are defined on a grid,
say corresponding to the voxels of an image, and you have one vector per grid.

which still renders the same.

There's room for debate for some of the linebreaks, but it could overall be helpful

Does anyone care about "First released?"

from October 2021 pre-launch bug bash

Created by: Allen

Description

Does anyone care about "First released?" Why?

Info

Bug source: unknown

Browser: unknown

PR: none

Attachments

docs test failing

just wanted to note from napari/napari#2473 that the doc tests were failing so I've made them able to continue on error so it will still be built. we'll see if this resolves itself or if further investigation is required

clearing chip tags "hovers" over next plugin on iPad

from October 2021 pre-launch bug bash

Created by: Kira Evans

Description

steps to reproduce (on iPad):

  1. apply a filter
  2. clear the filter by clicking on the X on the tag chip

Info

Bug source: unknown

Browser: Firefox, Safari, Edge, Chrome

PR: none

Attachments

https://dl.airtable.com/.attachments/5b1c1f58a54c165c107c2125ee9b06b8/b52837a4/2750B669-64FF-4296-A716-949AAF45797A.png https://dl.airtable.com/.attachments/27f16db378a761d6afb62394db0668e8/6f1d0453/B1AF92AA-4073-4351-AC77-FC3C7265A1C3.png

Tests failing on ubuntu-latest python 3.9 CI - Shader compilation error in GL_VERTEX_SHADER:

The CI tests failing on ubuntu-latest python 3.9: https://github.com/napari/napari.github.io/pull/125/checks?check_run_id=2413215369

It looks like there's some kind of compilation error causing the failure in test_docs.py::test_doc_code_cells[guides/stable/magicgui.md]

Here's the log:

test_docs.py::test_doc_code_cells[guides/stable/magicgui.md] FAILED      [100%]

=================================== FAILURES ===================================
________________ test_doc_code_cells[guides/stable/magicgui.md] ________________
CALL ERROR: Exceptions caught in Qt event loop:
________________________________________________________________________________
Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/app/backends/_qt.py", line 825, in paintGL
    self._vispy_canvas.events.draw(region=None)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/util/event.py", line 455, in __call__
    self._invoke_callback(cb, event)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/util/event.py", line 473, in _invoke_callback
    _handle_exception(self.ignore_callback_errors,
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/util/event.py", line 471, in _invoke_callback
    cb(event)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/scene/canvas.py", line 217, in on_draw
    self._draw_scene()
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/scene/canvas.py", line 266, in _draw_scene
    self.draw_visual(self.scene)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/scene/canvas.py", line 304, in draw_visual
    node.draw()
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/scene/visuals.py", line 99, in draw
    self._visual_superclass.draw(self)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/visuals/visual.py", line 595, in draw
    v.draw()
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/scene/visuals.py", line 99, in draw
    self._visual_superclass.draw(self)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/visuals/visual.py", line 442, in draw
    self._program.draw(self._vshare.draw_mode,
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/visuals/shaders/program.py", line 101, in draw
    Program.draw(self, *args, **kwargs)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/program.py", line 533, in draw
    canvas.context.flush_commands()
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/context.py", line 176, in flush_commands
    self.glir.flush(self.shared.parser)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/glir.py", line 572, in flush
    self._shared.flush(parser)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/glir.py", line 494, in flush
    parser.parse(self._filter(self.clear(), parser))
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/glir.py", line 819, in parse
    self._parse(command)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/glir.py", line 787, in _parse
    ob.set_data(*args)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/glir.py", line 929, in set_data
    raise RuntimeError("Shader compilation error in %s:\n%s" %
RuntimeError: Shader compilation error in GL_VERTEX_SHADER:

________________________________________________________________________________
----------------------------- Captured Qt messages -----------------------------
    QtWarningMsg: QMainWindow::saveState(): 'objectName' not set for QDockWidget 0x56521db4fc60 ';
    QtWarningMsg: QMainWindow::saveState(): 'objectName' not set for QDockWidget 0x56521644a160 ';
----------------------------- Captured stderr call -----------------------------
WARNING: Error drawing visual <Text at 0x7f3d2b651a90>
Exceptions caught in Qt event loop:
________________________________________________________________________________
Traceback (most recent call last):
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/app/backends/_qt.py", line 825, in paintGL
    self._vispy_canvas.events.draw(region=None)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/util/event.py", line 455, in __call__
    self._invoke_callback(cb, event)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/util/event.py", line 473, in _invoke_callback
    _handle_exception(self.ignore_callback_errors,
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/util/event.py", line 471, in _invoke_callback
    cb(event)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/scene/canvas.py", line 217, in on_draw
    self._draw_scene()
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/scene/canvas.py", line 266, in _draw_scene
    self.draw_visual(self.scene)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/scene/canvas.py", line 304, in draw_visual
    node.draw()
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/scene/visuals.py", line 99, in draw
    self._visual_superclass.draw(self)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/visuals/visual.py", line 595, in draw
    v.draw()
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/scene/visuals.py", line 99, in draw
    self._visual_superclass.draw(self)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/visuals/visual.py", line 442, in draw
    self._program.draw(self._vshare.draw_mode,
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/visuals/shaders/program.py", line 101, in draw
    Program.draw(self, *args, **kwargs)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/program.py", line 533, in draw
    canvas.context.flush_commands()
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/context.py", line 176, in flush_commands
    self.glir.flush(self.shared.parser)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/glir.py", line 572, in flush
    self._shared.flush(parser)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/glir.py", line 494, in flush
    parser.parse(self._filter(self.clear(), parser))
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/glir.py", line 819, in parse
    self._parse(command)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/glir.py", line 787, in _parse
    ob.set_data(*args)
  File "/opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/vispy/gloo/glir.py", line 929, in set_data
    raise RuntimeError("Shader compilation error in %s:\n%s" %
RuntimeError: Shader compilation error in GL_VERTEX_SHADER:

________________________________________________________________________________
------------------------------ Captured log call -------------------------------
WARNING  vispy:visual.py:445 Error drawing visual <Text at 0x7f3d2b651a90>
=============================== warnings summary ===============================
test_docs.py::test_doc_code_cells[tutorials/index.md]
  /opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/ipykernel/zmqshell.py:57: DeprecationWarning: ipykernel.datapub is deprecated. It has moved to ipyparallel.datapub
    from ipykernel.datapub import ZMQDataPublisher

test_docs.py::test_doc_code_cells[tutorials/index.md]
  /opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/ipykernel/datapub.py:21: DeprecationWarning: ipykernel.serialize is deprecated. It has moved to ipyparallel.serialize
    from ipykernel.serialize import serialize_object

test_docs.py::test_doc_code_cells[tutorials/index.md]
  /opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/ipykernel/serialize.py:25: DeprecationWarning: ipykernel.pickleutil is deprecated. It has moved to ipyparallel.
    from ipykernel.pickleutil import (

test_docs.py::test_doc_code_cells[tutorials/index.md]
  /opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/ipykernel/pickleutil.py:26: DeprecationWarning: ipykernel.codeutil is deprecated since IPykernel 4.3.1. It has moved to ipyparallel.serialize
    from ipykernel import codeutil

test_docs.py::test_doc_code_cells[tutorials/index.md]
  /opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/ipykernel/iostream.py:9: DeprecationWarning: the imp module is deprecated in favour of importlib; see the module's documentation for alternative uses
    from imp import lock_held as import_lock_held

test_docs.py::test_doc_code_cells[guides/stable/magicgui.md]
  /opt/hostedtoolcache/Python/3.9.4/x64/lib/python3.9/site-packages/magicgui/widgets/_bases/ranged_widget.py:28: FutureWarning: The 'maximum' keyword arguments has been changed to 'max'. In the future this will raise an exception
  
    warn(

-- Docs: https://docs.pytest.org/en/stable/warnings.html
=========================== short test summary info ============================
FAILED test_docs.py::test_doc_code_cells[guides/stable/magicgui.md]
=================== 1 failed, 8 passed, 6 warnings in 14.88s ===================

Enhancement proposal: use jupyter notebooks for all tutorial examples

I'd like to propose that we change the napari tutorials repository to hold example notebooks, instead of example markdown files, which get rendered in html on the tutorial website.

Since we're adding functionality for displaying screenshots in-line in notebooks, this seems like it could be the perfect time (especially since there's relatively few examples in here now).

This would have several advantages:

  1. It makes our tutorial docs more robust to API changes. We can add CI to check notebooks run without errors (and compare notebook outputs to some benchmark, if need be). This prevents tutorials drifting out of sync with the main napari repo.
  2. It entirely solves the problem of downloadable scripts, raised by Nick here: #19
  3. It would make things easier for people running napari workshops. I'm pretty sure every time Juan has given a talk or workshop on napari he has put together his own notebooks with examples. It'd be great if people could upload and share those here, then when someone else gives a talk there's a wider pool of resources available.

Some other projects using notebooks to generate docs:

  • dask uses notebooks in their examples respository, and has CI to run all notebooks & check for errors. Here's a link to the website.
  • fastai uses notebooks for documentation and code alike, and it all renders pretty nicely on their website.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.