tilde-lab / optimade.science Goto Github PK
View Code? Open in Web Editor NEWA "sky-scanner" Optimade browser-only GUI
Home Page: https://optimade.science/
License: MIT License
A "sky-scanner" Optimade browser-only GUI
Home Page: https://optimade.science/
License: MIT License
With the query nelements > 0
(which should return all structures in the databases), I currently get 20 structures for the materials project and odbx and less for the cod.
I guess the limit is currently 20, which would be nice to indicate with something like "..."
(even nicer would be to actually be able to paginate).
Furthermore, I notice that the client currently doesn't return any results for the "nested" materials cloud databases - is this an issue with the client or on the materials cloud side?
On https://optimadeclient.materialscloud.io/ I am able to query the materials cloud endpoints...
See e.g. Telegram web-app or Hetzner cloud GUI, relevant for a long-living cached instance
Unfortunately, a current one doesn’t work for IE.
It looks like this is primarily pinging the v0
endpoint, whereas most implementations have settled on the first implementation being v1
. That's causing the app to not find any sources other than pcod
or tcod
.
How to reproduce:
Try rather complex query e.g. elements HAS ANY "C","Si","Ge","Sn","Pb" AND nelements=2
: https://optimade.science/?filter=elements%20HAS%20ANY%20"C","Si","Ge","Sn","Pb"%20AND%20nelements=2&providers=threedd while only one provider is enabled.
Then enable arbitrary other new one, clicking by its avatar. The query in the input box changes on its own.
The problem is in the =
sign in this part of the query: nelements=2
When trying to query e.g. odbx, all filters return an error about page_number=0
being requested. OPTIMADE standardizes 3 different pagination types, number-based, offset-based an cursor-based. page_number=0
is invalid as number-based pagination starts at 1. Most databases actually use offset-based pagination, perhaps this should be used here instead?
IMO we should standardize an error code/message in the specification for unsupported pagination types, as it is not clear how to negotiate with a provider to figure this out...
To increase the loading speed, I'd propose generating a single sprite for all the logos, similar to https://mpds.io/aets.jpg vs. https://mpds.io/#polyhedra
@Valexr what do you think?
It seems there's a bottleneck in showing the search results, by the slowest provider. Until it returns the results, no other much faster providers' results are shown. This is strange, since the Optimade client per se is asynchronous.
I hope, the changes in the codebase won't be huge, otherwise may be it's not so good idea...
as per Materials-Consortia/OPTIMADE#102
NB this is in addition to the links existing in the avatars popups
We have to wait a throttling delay while using pagination, which worsens UX
Clearly visible if off-line...
I tried accessing data in the COD from the search results (https://optimade.science/#filter=elements%20HAS%20%22Ca%22), but the following URL of an individual entry is not supported in the COD:
https://www.crystallography.net/cod/optimade/structures/?filter=id=1000007
Note the /
before ?
, should be structures?filter=id=1000007
(without /
before ?
). I believe the following line is responsible:
Line 502 in be60495
cf. c00c53b
│ │
│ This version of postcss-preset-env is not optimised to work with PostCSS 8. │
│ Please update to version 7 of PostCSS Preset Env. │
│ │
│ If you find issues, you can report it at: │
│ https://github.com/csstools/postcss-plugins/issues/new/choose │
│ │
Since we have it now in our UI-kit svelte-spectre
, thanks to @Valexr (!), we need to support the switcher here as well.
At the result view, where JSON is displayed, certain fields can be nicely expanded, but CANNOT be copied...
Click MPDS so that it should be selected alone (exclusively). By some reason, another provider is also always selected.
When searching for spacegroup="P1"
on https://optimade.science, all providers but MPDS result in "No results". However, filter spacegroup="P1"
is not defined in the OPTIMADE standard, thus it is nonstandard. Therefore, replies "No results" from other providers give false impressions that these databases do not contain P1 structures, which some of them do. Therefore I propose catching HTTP 4xx and 5xx from providers and reporting them as such.
Just copying this from an earlier email to evgeny:
I was going to suggest to add a link to the optimade standard (so that people can understand what to put in the search fied) - then I realized that there was already a link at the bottom of the page.
It might make sense to move the footer (or at least the link to the standard) up to where the content of the page ends - I guess many people will be like me and overlook it at the very bottom of the page. I attach a screenshot just to illustrate the dimensions on my screen.
Or one could add a link to either directly to the "filter=" or on a Questionmark icon close to there that directly links to the optimade filter language specification
@Valexr are you aware if favicons are in either way supported on GitHub?
Hi,
May I just ask you a question regarding how you get the data from Materials Project for instance?
Do you use any python library? I'm not familiar with Svelte and TypeScript so that it's a bit difficult for me to find out in the code.
I'm trying to query chemical formula anonymous is "A" by using OPTIMADE API for Materials Project, with following request. But I did not get correct result.
https://optimade.materialsproject.org/v1/structures?chemical_formula_anonymous=%22A%22
Best,
Huanyu
See Avatar
component https://github.com/tilde-lab/optimade.science/tree/master/src/components/Avatar
A declarative, efficient, and flexible JavaScript library for building user interfaces.
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google ❤️ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.