Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

beef-up trident serve to provide meaningful "URI"-like responses for Poseidon_IDs and packages #323

Open
stschiff opened this issue Nov 25, 2024 · 1 comment

Comments

@stschiff
Copy link
Member

We discussed in our last meeting the option that trident serve could not only serve APIs, as currently, but actual HTML packages to issue information on specific samples or packages. For example

/individual/<Poseidon_ID> could yield a unique page specific for this sample, and
/package/<package_name> could yield information for a specific package.

This then could be used to make persistent URIs for packages and individual samples. Those in turn could be linked from within our Archive explorer.

In fact, such a system could actually replace our current archive explorer on the main webpage.

One managerial problem that I see is that if we open Pandora's box and end up front-end development for trident serve within this repository, we might end up needing lots of small updates to layout and HTML templates every now and then, which may defeat the purpose of our nice versioning for trident. We should start with this anyway at some point, but we may end up factoring out trident serve into another repository poseidon-server, as we originally had it. Not sure yet.

@nevrome
Copy link
Member

nevrome commented Nov 25, 2024

Some quick comments for future discussion:

  • The APIs for samples (!) and packages (and potentially other entities like individuals, groups or papers) should return either JSON data or HTML, I guess controlled by some switch in the URL. To enable both machine- and human-readability.
  • I understand that this new functionality may lead to trident releases with few practical changes for the currently most relevant subcommands. I still think it's better to keep the server within trident for three reasons:
    • The mono-repo approach ensures that server and client are perfectly in sync.
    • The added functionality could also be useful for users to explore their local Poseidon datasets.
    • My experience with the last two archive explorer websites was that an initial frenzy of development was quickly followed by stability. Probably the code for the HTML pages will quickly stabilize after a couple of releases.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants