Search sort filter table
Test deployment: http://obofoundrytest.cidgoh.ca/
This brings tears of joy to my eyes. Thanks.
Can you confirm that the following PRs (content-wise, i.e all the changes to the resulting HTML for accessibility reasons) are reflected by this PR?
- [x] https://github.com/OBOFoundry/OBOFoundry.github.io/pull/1972
- [x] https://github.com/OBOFoundry/OBOFoundry.github.io/pull/1971
- [x] https://github.com/OBOFoundry/OBOFoundry.github.io/pull/1970
- [x] document all classes and functions using JavaScript standard style (@cthoyt comment)
- [x] Use a standard JavaScript linter (@cthoyt comment)
- [x] No CSS network dependencies (see @ddooley comment)
- [x] Display a server-side constructed HTML table when Java Script is deactivated (@jamesaoverton comment)
- [x] Add better more visible tooltips for the buttons in the table (see @matentzn comment)
- [x] Have the Re-use column sortable by license, cc-0 first then cc-by, then rest (in any order, @bpeters42 and @nlharris comment)
- [X] Fix mouse-over for star symbol (@bpeters42 suggestion)
- [x] Remove the text:
The table below lists current OBO ontologies (in alphabetical order, but with the ontologies that have been manually reviewed by the OBO Foundry listed first, and obsolete ontologies listed last).(@nlharris suggestion)
Overall I think this is good and a major improvement. Thank you for doing this work!
Suggestions James (folded in todolist above)
However I think that a basic HTML table needs to be displayed even if JavaScript is disabled. In the current code, without JavaScript active there is no table of ontologies. The table on obofoundry.org today (before this PR) is not as pretty, but it works without JavaScript.
OBO is a global and inclusive community, and I think we should not assume that everyone is browsing the web with JavaScript enabled. We need to be accessible to screen readers, old hardware, and slow/expensive network connections -- especially our front page.
My suggestion is to reuse the existing Jekyll template code to generate an HTML table (server-side), and then replace that table (client-side) if JavaScript is enabled.
Great point, did not think of inclusivity at all.
Suggestions OBO Ops (folded in todolist above)
@despean we also got some feedback on the buttons in the table: People have asked for some more prominent tooltips when hovering over the buttons to know what they mean.
Is this something that can be realised (even a proper nice
(Awaiting response from @despean -- it hasn't been an excessively long time; just wanted to note where we're at)
I have updated the list of action items above, @despean let us know if you have any questions.
Suggestions Bjoern (folded in todolist above)
Fantastic work! Three minor comments: 1) I had some issues with the rightmost sort button (presumably sort by license?) which didn't do anything for me. 2) I would uncheck the 'group by domain' field in the default load view and start off with the flat list. 3) I didn't get a mouse-over for the 'star' symbol which presumably is the OBO foundry designation.
None of this should block merging the pull request.
This is great! Nice job @despean!
@bpeters42 i would prefer for now to have the group by domain activated because it circumvents the debate of the standard sorting metric (by showing very relevant ontologies first). We can revisit this default setting once we have a non controversial alternative.. but I am curious - I really like that grouping!
This is super-cool and will be a huge improvement to the home page! š A few minor comments and suggestions:
I love the domains pulldown selection menu and the ability to search the table! I also love the "Hide Inactive" and "Hide Obsolete" checkboxes.
Suggestions Nomi (folded in todolist above, where Nico deemed urgent)
I think this text needs to be updated:
The table below lists current OBO ontologies (in alphabetical order, but with the ontologies that have been manually reviewed by the OBO Foundry listed first, and obsolete ontologies listed last).
Sort by re-use didn't seem to work (but it's not important). (Or is that sort button for Social? It's in between the two, so a bit hard to tell. But it doesn't seem to obviously sort by Social either.)
If the down-arrow for sort changed to an up-arrow for sorting the other way, that would be extra cool (but not worth spending a lot of developer time on).
Some of the badges show up as "404 not found" -- this is mostly true for obsolete ontologies, but also for e.g. fma. Oh wait -- apparently fma is inactive, but how does one see that from the listing? I only noticed that by turning off/on "Hide inactive". COMMENT @matentzn: Inactive is grey row!
Space usage: I would prefer if each ontology used up as little vertical space as possible, to maximize the number of ontologies you can see on one page w/o scrolling. The descriptions often take multiple lines; meanwhile, there's a lot of horizontal padding esp. on the Quick Access column that could be reduced and donated to the Description column to help it wrap less.
made the required changes regarding the icon tooltip and also enabled non javascript table(old Jekyll table)
CLOSED FOR FEEDBACK (other than praise, or essential suggestions). Please add additional suggestions here: https://github.com/OBOFoundry/OBOFoundry.github.io/issues/1994
This brings tears of joy to my eyes. Thanks.
Can you confirm that the following PRs (content-wise, i.e all the changes to the resulting HTML for accessibility reasons) are reflected by this PR?
- [x] Truncate long short descriptionsĀ #1972
- [x] Improve accessibility of homepage by switching buttons to linksĀ #1971
- [x] Improve accessibility of home pageĀ #1970
- [x] document all classes and functions using JavaScript standard style (@cthoyt comment)
- [x] Use a standard JavaScript linter (@cthoyt comment)
- [x] No CSS network dependencies (see @ddooley comment)
- [x] Display a server-side constructed HTML table when Java Script is deactivated (@jamesaoverton comment)
- [x] Add better more visible tooltips for the buttons in the table (see @matentzn comment)
- [x] Have the Re-use column sortable by license, cc-0 first then cc-by, then rest (in any order, @bpeters42 and @nlharris comment)
- [x] Fix mouse-over for star symbol (@bpeters42 suggestion)
- [x] Remove the text:
The table below lists current OBO ontologies (in alphabetical order, but with the ontologies that have been manually reviewed by the OBO Foundry listed first, and obsolete ontologies listed last).(@nlharris suggestion)
updated completion status of task above
@ddooley @cthoyt only essential (life and death) feedback now, for everything else: https://github.com/OBOFoundry/OBOFoundry.github.io/issues/1994
I will merge this on Monday. Thank you for your help!
@ddooley @cthoyt only essential (life and death) feedback now, for everything else: #1994
I will merge this on Monday. Thank you for your help!
This PR is super cool, I love it, and it's way better than what we had before.
#1994 could be a good place to collate feedback but I will give my next round of feedback here since it allows for directly putting comments on the code. This is also possible post-merge using permalinks, but that leaves us in a catch-22.
However, I'm still concerned about maintainability and follow-up. We're now introducing a ton of spaghetti code in jQuery that is very hard to figure out - is there a commitment to maintenance and follow-up? Like when it comes to this kind of thing, it's often just easier to do it all over yet again then figure it out and make improvements. Further, there isn't much publicly available context for this change (no corresponding issue, no public discussion). IIRC, @despean is working in the group of someone who's active in OBO?
BTW @despean I've been on the other side of the maintainability question, so I totally get that this is a frustrating question to answer :)
Absolute last list of changes
from absolute last review by @cthoyt (thanks for your work on this @cthoyt):
- [ ] Fix table header vertical alignment
- [ ] Fix reu-use alignment CSS
- [ ] Remove star icon from table
- [ ] Please add doc strings (comments, whatever is standard in JS) to all methods/classes in sorttable.js
- [ ] Remove unnecessary HTML / CSS for foundry status as per this comment
@despean let me know if you have any questions, or when these are done :)
- [X] @cthoyt if you don't mind, can you take a peek at why QC is failing? Seems like entirely unrelated to the PR..
However, I'm still concerned about maintainability and follow-up. We're now introducing a ton of spaghetti code in jQuery that is very hard to figure out - is there a commitment to maintenance and follow-up? IIRC, @despean is working in the group of someone who's active in OBO?
@despean is part of @ddooley's team, who is a core member of OBO and one of the most active Operations member - I don't doubt we can count on him and his team for future maintenance. Thanks for saying this, this is 100% valid concern!
Like when it comes to this kind of thing, it's often just easier to do it all over yet again then figure it out and make improvements.
Given our track records of volunteers, I doubt this will happen, but should it happen, it will be for such a major redesign that absolutely everything about the OBO website will be done from scratch, or by someone that knows there way around JQuery.
Further, there isn't much publicly available context for this change (no corresponding issue, no public discussion).
My bad. We decided to work this table out through a series of meetings rather than GitHub!
It appears flake8 5.0 has dropped and flake-isort has a few issues (c.f., https://github.com/gforcada/flake8-isort/issues/115). Let's hang tight and hopefully this will get addressed tomorrow morning since it's the first business day since the flake8 drop
what is the status of this? are there any blocking issues, or just nice-to-have suggestions? i am excited to see this new sortable table on the live site!
Final to-do list required for merge in https://github.com/OBOFoundry/OBOFoundry.github.io/pull/1978#issuecomment-1200443870 from 11 days ago, no comment from the author since. @despean can you confirm you've seen this and let us know if you're working on it / have a plan when to start?
Please my friends of the OBO verse, it is holiday season. I am working with the table team to see this through. No rushing and pushing on any PRs in August!
Absolute last list of changes
from absolute last review by @cthoyt (thanks for your work on this @cthoyt):
- [x] Fix table header vertical alignment
- [x] Fix reu-use alignment CSS
- [x] Remove star icon from table
- [x] Please add doc strings (comments, whatever is standard in JS) to all methods/classes in sorttable.js
- [x] Remove unnecessary HTML / CSS for foundry status as per this comment
@despean let me know if you have any questions, or when these are done :)
- [x] @cthoyt if you don't mind, can you take a peek at why QC is failing? Seems like entirely unrelated to the PR..
However, I'm still concerned about maintainability and follow-up. We're now introducing a ton of spaghetti code in jQuery that is very hard to figure out - is there a commitment to maintenance and follow-up? IIRC, @despean is working in the group of someone who's active in OBO?
@despean is part of @ddooley's team, who is a core member of OBO and one of the most active Operations member - I don't doubt we can count on him and his team for future maintenance. Thanks for saying this, this is 100% valid concern!
Like when it comes to this kind of thing, it's often just easier to do it all over yet again then figure it out and make improvements.
Given our track records of volunteers, I doubt this will happen, but should it happen, it will be for such a major redesign that absolutely everything about the OBO website will be done from scratch, or by someone that knows there way around JQuery.
Further, there isn't much publicly available context for this change (no corresponding issue, no public discussion).
My bad. We decided to work this table out through a series of meetings rather than GitHub!
issues resolved
Thank you @despean this is truly awesome. I will merge this shortly.