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

Generalize/modularize components for different datasets & integrations #249

Closed
metasoarous opened this issue Mar 2, 2017 · 1 comment
Closed

Comments

@metasoarous
Copy link
Contributor

As discussed in person, it would be great to modularize auspice so it can be more easily applied towards different datasets (that might not have been processed with augur) and integrated into other applications. I'll add to this as things come up, but as a first pass here is what I see needing to happen:

  • Pull the datasets collection out of the config/globals file, and make that a bit more plugable. Perhaps this could be more data in the store?
    • It would be nice to generalize the routes and such for the data these things need to fetch, so it's not just based on naming conventions as well.
  • Make the main view components themselves a little more modular by making it possible to (e.g) just use TreeView without the Map, etc. I don't know if it's better to do this by just making the individual components themselves more modular so they can be plugged into another app context, or whether the top level app component just needs to be more configurable flexible. Maybe both?
  • Think a bit about how various UI events can be plugged into or extended. (Like, in another setting, you might want to trigger some additional behavior in another part of the app when you click on a tree node). Redux's event/model/view separation should ease this, but there may still be some thinking and tinkering to do.

Right now I've got the requests coming through for our dataset, but still some tinkering before I'm actually able to get anything working. And it's all a bit hacky at the moment, as I'm just directly editing things into the code as needed, but doing this should help highlight the path forward for smoother application in different settings.

Last note: It would perhaps also be nice if there was a wiki page with information about how one's own data can be plugged in. I could start throwing things in there as I plod forward if you like.

@jameshadfield jameshadfield mentioned this issue Mar 15, 2017
6 tasks
@jameshadfield
Copy link
Member

Hey Chris -- thanks for this and all your discussions. We've started implementing this now (see https://nextstrain.github.io/auspice/customisations/introduction), and in fact nextstrain.org/zika is using an "extended" version of auspice. Fair to say it's the beginning of this path, but confident we're heading in the right directions. Let us know if you've got more ideas!

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