Closed JobLeonard closed 7 years ago
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.
Date metadata has been added
Ok, I think we can consider this ready for use:
Correction: now we're ready.
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")
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.
Added. Created my own version of sortable tables in the process, the whole thing is a lot leaner now - down to 876kb.
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):
UI improvements
Examples of sortable table implementations in React:
https://rudolph-miller.github.io/react-sortable-table/ (source)
Important: use stable sort! Only the last example has persistent sorting settings.
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.