@cnrs/heimdall
v1.0.0
Published
Implementation of the HERA API, batteries included.
Maintainers
Readme
Heimdall.js
What is this?
Heimdall is a tool for converting more easily one or more databases from one format to another.
Why should I use it?
If, for example, you find yourself in one of the following situations...
- you need access to data, but it is not stored in a format compatible with your favorite software...
- you'd prefer to merge several heterogeneous databases into a single corpus, easier to analyze...
- you're considering which input format to use for your software or database...
- you want to make your data more accessible and interoperable...
... then Heimdall can offer you an exchange format, and abstract the details of data implementation: yours, but also those of others.
Thanks to Heimdall, you can also switch from one technology to another in a matter of moments, as and when you need to, without ever losing, disorganizing or corrupting your data.
In a nutshell, HEIMDALL is your High End Interoperability Module when Data is ALL over the place. It's a bridge between scattered islands of data.
How can I use it?
You can install Heimdall.js ⟨10.5281/zenodo.10671999⟩ by installing the package @cnrs/heimdall from the NPM repository using your regular package manager.
For example:
pnpm install @cnrs/heimdallYou can add it as a dependency to your package.json file, as usual.
Once installed, you can start using it with a few simple calls:
import { getDatabase } from '@cnrs/heimdall';
var db = getDatabase(format='storage:memory', url='mydb');
db.createItem({
metadata: [
{pid: 'dcmi:title', value: "HEIMDALL" },
{pid: 'dcmi:description', value: "Heimdall is awesome ヽ(´ー`)ノ" },
{pid: 'dcmi:type', value: "http://purl.org/dc/dcmitype/Software" },
],
});Is it documented?
Sure!
You can read the user manual here, or jump directly to the technical reference here.
You can use your IDE built-in access to code documentation features, too.
Is it tested?
Of course!
Here's the coverage report.
You can run all tests on your machine, too.
After having cloned this repository, enter it, setup your dev environment, and then do for example:
pnpm run test:coverageHow can I contribute?
Aww that's so very kind of you! (。◕‿‿◕。)♥
Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.
License
GNU Affero General Public License version 3.0 or later
Acknowledgments
Heimdall would like to thank all its contributors and users for their support and feedback. ʕᵔᴥᵔʔ
