linnarsson-lab / loom-viewer

Tool for sharing, browsing and visualizing single-cell data stored in the Loom file format
BSD 2-Clause "Simplified" License
35 stars 6 forks source link

Filterable/searchable list of datasets and other UI improvements #64

Closed JobLeonard closed 7 years ago

JobLeonard commented 7 years ago

Amit asked this yesterday. High priority issue, since he has trouble locating datasets in the current list of datasets.

Modified photo of the old interface that he would like to see again (by which of course he means feature set):

img_20161011_163813-01

UI improvements

Examples of sortable table implementations in React:

I think we should use the last example combined with fuse.js; that table implementation has the most customisation options regarding its CSS, the best sorting options, and doesn't come with its own filter implementation which means little conflict with our own customisations. Meanwhile, fuse.jse makes it trivial to do a fuzzy text search in JS objects (and we'll want fuzzy search). Just pass a list of objects and a configuration for which keys it has to check the values, and it returns a list of matching object. This makes it trivial to combine filters per column: we'll just pass the result of one fuzzy search into the next.

If you have any other input on this please chime in.

JobLeonard commented 7 years ago

BOOM! DONE! (almost)

image

https://youtu.be/8O0ow_uFGWo

That was surprisingly easy, just one day of work! Now all we need is a bit more metadata. creation date is a must.

Until we have that, could you pull, build and deploy @slinnarsson ? I still have those mysterious schema errors, and while not quite there yet this is still better than what we had before.

JobLeonard commented 7 years ago

Date metadata has been added

JobLeonard commented 7 years ago

Ok, I think we can consider this ready for use:

image

JobLeonard commented 7 years ago

Correction: now we're ready.

image

JobLeonard commented 7 years ago

DEPLOYED! Woo!

Oh, and I finally figured out what was wrong with the deployment thingy; I had the .pypirc in the wrong folder (the root Loom folder, but it should have been $HOME - of course it doesn't help that setuptools says "unsupported schema" instead of "missing .pypirc file")

JobLeonard commented 7 years ago

Amit requested one more metadata field: sample size. So number of cells. I might as well do genes as well - I guess I could pull this from the loom file by looking at number of rows/columns.

JobLeonard commented 7 years ago

Added. Created my own version of sortable tables in the process, the whole thing is a lot leaner now - down to 876kb.