{"id":23819937,"url":"https://github.com/kth/diva-invenio-data-exchanger","last_synced_at":"2026-06-29T10:32:07.059Z","repository":{"id":160353564,"uuid":"633928582","full_name":"KTH/diva-invenio-data-exchanger","owner":"KTH","description":"data exchange between the DIVA and Invenio systems.","archived":false,"fork":false,"pushed_at":"2024-10-25T17:03:46.000Z","size":69,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-07-06T09:50:29.729Z","etag":null,"topics":["diva","invenio-rdm","python","records-management"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/KTH.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2023-04-28T15:51:18.000Z","updated_at":"2024-10-25T17:03:50.000Z","dependencies_parsed_at":null,"dependency_job_id":"60c283ec-2f87-48ae-8d2e-12482ffe1505","html_url":"https://github.com/KTH/diva-invenio-data-exchanger","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/KTH/diva-invenio-data-exchanger","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KTH%2Fdiva-invenio-data-exchanger","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KTH%2Fdiva-invenio-data-exchanger/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KTH%2Fdiva-invenio-data-exchanger/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KTH%2Fdiva-invenio-data-exchanger/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/KTH","download_url":"https://codeload.github.com/KTH/diva-invenio-data-exchanger/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/KTH%2Fdiva-invenio-data-exchanger/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34923763,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-29T02:00:05.398Z","response_time":58,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["diva","invenio-rdm","python","records-management"],"created_at":"2025-01-02T07:16:28.089Z","updated_at":"2026-06-29T10:32:07.039Z","avatar_url":"https://github.com/KTH.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"![Tests](https://github.com/KTH/diva-invenio-data-exchanger/actions/workflows/test.yml/badge.svg)\n\n# DIVA Invenio data exchanger\nThe DIVA Invenio Data Exchanger is a Python-based tool designed to facilitate data exchange between the DIVA and Invenio systems.\nThe tool provides a seamless way to move data between these two systems, making it easy to convert Diva data into Invenio platform and vice versa.\n## prerequisites:\nMake sure your virtual environment is set up.\n\n## How to convert\nMakefile provides you a convenient interface with the following commands:\n\n### make\nList the available commands:\n```bash\nmake\n```\n### install\nInstalls the Python dependencies specified in the requirements.txt file\n```bash\nmake install\n```\n\n### run\nRuns the main.py Python script with the input and output arguments provided as command line arguments.\n```bash\nmake run path_in=data/input/100-pub.csv path_out=data/output/100-pub.json\n```\nexpected input structure from Diva: [here](tests/fixtures/input/fixture.csv)\n\n\n### Format\nFormats the code using the black code formatter and isort.\n```bash\nmake format\n```\n\n### Test\n```bash\nmake test\n```\n\n### Contribution Request:\nFind TODO, send PR.\n\n\n\n### Invenio API\nMost likelly we will use [newman](https://www.npmjs.com/package/newman) it's a free command-line collection runner for Postman, it can generate reports and take care of the API requests part.\n\n## Resources:\n### [Invenio docs](https://inveniordm.docs.cern.ch/reference/metadata/)\n\n\n### [Pandas docs](https://pandas.pydata.org/docs/getting_started/intro_tutorials/10_text_data.html)\n\n\n\n### [Invenio record schema](https://github.com/inveniosoftware/invenio-rdm-records/blob/6d7758714d08be9317bed5d402fc09731f71bf3d/invenio_rdm_records/records/jsonschemas/records/record-v6.0.0.json)\n\n\n## TODOs\n\nLook into the implementation of: https://github.com/front-matter/commonmeta-py\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkth%2Fdiva-invenio-data-exchanger","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fkth%2Fdiva-invenio-data-exchanger","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fkth%2Fdiva-invenio-data-exchanger/lists"}