OHDSI Home | Forums | Wiki | Github

Package.json? javascript environment

Hi. I’m just starting to look at the ATLAS code so I can pitch in on some Patient Visualization WG work, and I noticed there’s no package.json; all third party libraries are directly included in the repo. Pardon me for bringing this up when I don’t have time to address it myself, but I just wanted to ask if there’s been an explicit decision to make the OHSDI (or at least ATLAS) libraries as simple as possible without requiring people to use npm or module bundlers like Webpack and stuff?

It’s probably not wise to have individual programmers bring in their own favorite bits of the javascript development ecosystem, but most projects I’ve worked on in the last few years use at least npm. Probably I’m just getting here late and missed the conversation. Maybe someone could fill me in. But if the conversation hasn’t happened yet, is now the time?

Thanks,
Sigfried

Yes - at one point we had a discussion about using npm and ultimately didn’t include it. ATLAS is ultimately the evolution of HERMES which was the evolution of something called Concept Explorer which was the evolution of something called criteria library dating back some 5-7 years. The reason for providing the long lineage is simply to give myself a good excuse for why we’re not using some of the more modern development paradigms. :slight_smile: Refactoring things to incorporate it into our development workflow isn’t something on my priority list but it certainly an area I would welcome assistance.

Thanks for the explanation, Frank. Now that raises some more questions :slight_smile:
I’m just starting to get my feet wet here, so pardon the naive questions.

So, HERMES is now obsolete, replaced by ATLAS? Does that mean there’s no
separate vocabulary browser? I was suggesting on the call yesterday I
thought there should be some common utility (accessible through a pane or
dialog box or something, not only on its own page) that any OHDSI tool
could use to control the granularity and scope of concepts (and concept
sets) used in queries and reports. It sounds like HERMES provided some of
that functionality. What do other tools use for concept specification now?
Is vocabulary browsing and concept specification basically an independent
module within ATLAS at this point?

If my questions are too clueless, I can take them offline; but thanks for
taking time to get me oriented.

I would recommend people use ATLAS as it is actively being developed and that isn’t the case with HERMES. I have actually released updates to HERMES in the past that are based on the ATLAS code base but don’t include any of the other features being enabled so it isn’t entirely obsolete. All the vocabulary browsing functionality of HERMES is available in ATLAS… So far the demand has been for a more unified tool than stand-alone tools which is why my development efforts have been directed to ATLAS.

That makes sense @Frank. @Sigfried_Gold following up on your and Franks observations, we are in the process of introducing support for npm and npm-related tools (package.json, some grunt/gulp files, etc) into our build and test scripts here at Columbia University DBMI. If/when it come to maturity, we would love to contribute anything useful back to the project.

Hey Taha,

I’ll definitely want to see as soon as possible any changes you’re making
in this direction. I’m about to start doing some coding on ATLAS for
Janssen and would love to take advantages of any build changes you make
rather than introducing more of my own.

Sigfried

@Sigfried_Gold. Great! I will issue a pull request as soon as we have something to share. In the interim please introduce away! :slight_smile:

t