bluehalo / node-fhir-server-core

An Open Source secure REST implementation for the HL7 FHIR Specification. For API documentation, please see https://github.com/Asymmetrik/node-fhir-server-core/wiki.
https://asymmetrik.com/healthcare
MIT License
391 stars 119 forks source link

(Question) setting up a sandbox env FHIR server #262

Closed jtheory closed 2 years ago

jtheory commented 3 years ago

Do you want to request a feature, report a bug, or improve documentation?

I've been reading through docs & code — can you confirm the level of completeness of the Node FHIR Server Core as an implementation of the FHIR (US core) spec? I did figure out quickly that it doesn't include a data store, and I saw the MongoDB-based impl (which is only a partial impl: mostly TODOs to build the queries for most resources). I can't tell the state of the Sequelize-based impl. Is that just prelim code? Have you used it in internal projects?

Basically: I've not yet spent enough time in code to tell how much is missing, and the level of work required to make a fully-functional FHIR server. It'd be really nice to have this in the overview: e.g. "here's what this project does, and here's how you can use it; here is where to go next if you want to do X/Y/Z."

How does Asymmetrik use this project, internally? Do you have any info on how other people/companies have used it? What functionality is stable & covered with tests, vs. what's not (yet)? Do you have a roadmap?

It's tough to need to go through code to find things like this

  // query = applyArchivedFilter({ query, archivedParamPath, includeArchived });
  query = applySearchResultTransformations({
    query,
    searchResultTransformations,
  });
  // query = applyPaging({ query, pageNumber, resultsPerPage });
  return query;

and then realize oh, I think paging support is missing. Or maybe that was moved to the datasource-specific code, and I can ignore this? :sweat_smile:

Thanks in advance for any info you can offer. :+1:

zeevo commented 3 years ago

node-fhir-server-core is a framework for building FHIR Servers, and is not a FHIR Server unto itself. node-fhir-server-mongo is a "proof of concept" project that uses node-fhir-server-core. node-fhir-server-mongo is not a complete implementation of FHIR, but moreso an example of how node-fhir-server-core can we used with a MongoDB database. You could use any database or none at all if you want.

Asymmetrik uses this project to build FHIR Servers that pull live data from different (usually legacy) sources. https://github.com/DataBiosphere/FHIR is one example of node-fhir-server-core being used out in the wild.

jtheory commented 3 years ago

Excellent, thanks for filling in some of these gaps, and for the quick reply!