Skip to content
This repository has been archived by the owner on Aug 16, 2021. It is now read-only.

make niivue.js a separate module #105

Open
hanayik opened this issue Mar 25, 2021 · 0 comments
Open

make niivue.js a separate module #105

hanayik opened this issue Mar 25, 2021 · 0 comments

Comments

@hanayik
Copy link
Owner

hanayik commented Mar 25, 2021

@neurolabusc and @cdrake , Now that the project has grown a bit, I think it would be best to separate the core niivue.js module into its own project. niivue.js contains all of the core image processing and rendering routines. It also imports some shaders and utility functions, so those would accompany niivue.js in its new repository.

What we currently have in hanayik/niivue is not sharable. Others can't import anything we have created easily. The code base has grown organically, but now that it is somewhat stable it would be good to separate things into modules that can be imported into other projects (either ours or anyone else's).

Here's my proposal:

  • move core niivue to https://github.com/niivue/niivue. This would be a module that anyone can import in order to use niivue for simple webgl2 medical image rendering. We can create basic demo html files with a canvas for easy developing like we currently have.
  • create https://github.com/niivue/niivue-web as a Vue/Vuetify user interface development repo. This would essentially be the current hanayik/niivue UI code base without niivue.js. niivue-web would import the niivue module as a dependency.
  • create https://github.com/niivue/niivue-desktop as an electron desktop application that could in time be developed into a more mature, full fledged visualisation tool for offline use. This would most likely mirror some features in current viewers such as MRIcroGL and FSLeyes. This would not be a quick project.

Use this issue to start any discussions we might want to have.

If you support this idea I will setup the new repos and fill them with the current niivue components (once separated). I will also put in some basic development helpers so that we can develop the core library with nice reloadable pages like we currently have with vue.

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

No branches or pull requests

1 participant