{"id":42100155,"url":"https://github.com/iterorganization/imas-core","last_synced_at":"2026-02-12T16:01:02.270Z","repository":{"id":327434696,"uuid":"914790457","full_name":"iterorganization/IMAS-Core","owner":"iterorganization","description":"The IMAS Access Layer core library","archived":false,"fork":false,"pushed_at":"2026-02-09T12:20:52.000Z","size":7264,"stargazers_count":7,"open_issues_count":4,"forks_count":10,"subscribers_count":9,"default_branch":"develop","last_synced_at":"2026-02-09T15:31:42.131Z","etag":null,"topics":["data-access","fusion","imas"],"latest_commit_sha":null,"homepage":"https://imas-core.readthedocs.io/en/latest/","language":"C++","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"lgpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/iterorganization.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":"CONTRIBUTING.md","funding":null,"license":"LICENSE.txt","code_of_conduct":"CODE_OF_CONDUCT.md","threat_model":null,"audit":null,"citation":null,"codeowners":".github/CODEOWNERS","security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2025-01-10T10:06:28.000Z","updated_at":"2026-02-09T12:20:57.000Z","dependencies_parsed_at":null,"dependency_job_id":"ffa87873-fa34-4365-986c-06d56e748e6c","html_url":"https://github.com/iterorganization/IMAS-Core","commit_stats":null,"previous_names":["iterorganization/imas-core"],"tags_count":33,"template":false,"template_full_name":null,"purl":"pkg:github/iterorganization/IMAS-Core","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iterorganization%2FIMAS-Core","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iterorganization%2FIMAS-Core/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iterorganization%2FIMAS-Core/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iterorganization%2FIMAS-Core/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/iterorganization","download_url":"https://codeload.github.com/iterorganization/IMAS-Core/tar.gz/refs/heads/develop","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/iterorganization%2FIMAS-Core/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":29371387,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-02-12T08:51:36.827Z","status":"ssl_error","status_checked_at":"2026-02-12T08:51:26.849Z","response_time":55,"last_error":"SSL_read: unexpected eof while reading","robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":false,"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":["data-access","fusion","imas"],"created_at":"2026-01-26T12:27:05.226Z","updated_at":"2026-02-12T16:01:02.250Z","avatar_url":"https://github.com/iterorganization.png","language":"C++","readme":"# IMAS-Core\n\n[![Build](https://github.com/iterorganization/IMAS-Core/actions/workflows/wheels.yml/badge.svg?branch=develop)](https://github.com/iterorganization/IMAS-Core/actions/workflows/wheels.yml)\n[![Open Issues](https://img.shields.io/github/issues/iterorganization/IMAS-Core)](https://github.com/iterorganization/IMAS-Core/issues)\n[![License: LGPL-3.0](https://img.shields.io/github/license/iterorganization/IMAS-Core?label=License)](https://github.com/iterorganization/IMAS-Core/blob/main/LICENSE.txt)\n\n\n**IMAS-Core** is a lowlevel library with Python bindings for reading and writing fusion experiment data in standard IMAS format.\n\nIt provides easy access to data stored in HDF5, MDSplus, and other formats, making it simple to work with fusion physics data across platforms (Linux, macOS, Windows).\n\nThis repository contains the **Lowlevel components of the Access Layer**:\n\n- **C lowlevel interface** used by the various High Level Interfaces\n- **Python bindings** to the lowlevel interface\n- **Backends** for reading and writing IMAS data\n- **MDS+ model logic** for creating the models required by the MDS+ backend\n\n\n## Quick Installation\n\nInstall IMAS-Core with a single command:\n\n```bash\npip install imas-core\npython -c \"import imas_core\"\n```\n\nThat's it! No need to compile or configure anything.\n\n## Features\n\n- ✅ **Easy to Install** - Single `pip install` command\n- ✅ **Multiple Formats** - HDF5, MDSplus, UDA, in-memory, and more\n- ✅ **Cross-Platform** - Works on Linux, macOS, and Windows\n- ✅ **IMAS Standard** - Access standardized fusion data structures\n- ✅ **Read \u0026 Write** - Both data access and creation supported\n\n## Installation Options\n\n### For Python Users (Recommended)\n\n```bash\n# Simple install from PyPI for Python applications\npip install imas-core\n\n# Verify installation\npython -c \"import imas; print(imas.__version__)\"\n```\n\n\n### For Developers\n\nSee [Building from Source](docs/source/user_guide/installation.rst) for detailed build instructions.\n\n## Using IMAS-Core with High-Level Languages\n\nWhen IMAS-Core is built and installed via CMake, it creates a complete runtime environment with:\n\n- **C/C++ Libraries** (`libal.so`) with full headers\n- **Python Bindings** (`imas_core` Python package)\n- **Fortran Support** via pkg-config configuration\n- **Java Support** via `imas.jar`\n- **MATLAB Support** via MEX bindings\n- **Models** for MDSplus backend access\n\nAfter installation, configure your environment:\n\n```bash\nexport PATH=\"/path/to/install/bin:$PATH\"\nexport LD_LIBRARY_PATH=\"/path/to/install/lib:$LD_LIBRARY_PATH\"\nexport PKG_CONFIG_PATH=\"/path/to/install/lib/pkgconfig:$PKG_CONFIG_PATH\"\nexport HDF5_USE_FILE_LOCKING=FALSE\nexport PYTHONPATH=\"/path/to/install/lib/pythonX.X/site-packages:$PYTHONPATH\"\n```\n\nThen use IMAS-Core from your preferred language:\n- **Python**: `import imas` (see examples above)\n- **C/C++**: Link against `libal.so` with provided headers\n- **Fortran**: Use pkg-config to get compiler flags\n- **Java**: Use `imas.jar` in your classpath\n- **MATLAB**: Add MEX directory to MATLAB path\n\n\n## Documentation\n\n- **[User Guide](docs/source/user_guide/index.rst)** - Complete user documentation\n- **[Installation Guide](docs/source/user_guide/installation.rst)** - Installation instructions\n- **[Backends Guide](docs/source/user_guide/backends_guide.rst)** - Available data backends\n- **[URIs Guide](docs/source/user_guide/uris_guide.rst)** - Data entry URI documentation\n- **[Configuration](docs/source/user_guide/configuration.rst)** - Configuration options\n- **[FAQ](docs/source/faq.rst)** - Frequently asked questions\n- **[Troubleshooting](docs/source/troubleshooting.rst)** - Common issues \u0026 solutions\n\n## System Requirements\n\n- **Python**: 3.8 or newer \n- **OS**: Linux, macOS, or Windows\n- **pip**: 19.0 or newer\n\n## Available Backends\n\nIMAS-Core supports multiple data storage formats:\n\n| Backend | Use Case | Remote | File-based |\n|---------|----------|--------|-----------|\n| **HDF5** | Default, local storage | No | Yes |\n| **MDSplus** | ITER experiments | Yes | No |\n| **UDA** | Distributed access | Yes | No |\n| **Memory** | Testing, IPC | No | No |\n| **FlexBuffers** | Message passing | No | Yes |\n| **ASCII** | Debugging | No | Yes |\n\n## Troubleshooting\n\n**Can't find file?**\n```python\n# Check file path\nimport os\nprint(os.path.exists('/path/to/file.h5'))\n```\n\n**Need help?**\n- See [Troubleshooting Guide](docs/source/troubleshooting.rst)\n- Check [FAQ](docs/source/faq.rst)\n- Open an [Issue on GitHub](https://github.com/iterorganization/IMAS-Core/issues)\n\n## What's Included?\n\nIMAS-Core provides:\n\n- **Python API** - Full Python bindings with NumPy support\n- **Multiple Backends** - HDF5, MDSplus, UDA, and more\n- **Data Creation** - Create and populate IMAS IDS structures\n- **Data Access** - Read from multiple sources transparently\n- **Standard Format** - IMAS standardized data structures\n\n## For Developers\n\nTo build IMAS-Core from source:\n\n```bash\ngit clone https://github.com/iterorganization/IMAS-Core.git\ncd IMAS-Core\ncmake -Bbuild -GNinja -DAL_PYTHON_BINDINGS=ON -DCMAKE_INSTALL_PREFIX=\"$(pwd)/test-install\"\ncmake --build build --target install\n```\n\nSee [Developer Guide](docs/source/developers/index.rst) for detailed instructions.\n\n## Links\n\n- **Homepage**: \n- **GitHub**: https://github.com/iterorganization/IMAS-Core\n- **PyPI**: https://pypi.org/project/imas-core/\n- **Data Dictionary**: https://imas-data-dictionary.readthedocs.io/\n- **Issue Tracker**: https://github.com/iterorganization/IMAS-Core/issues\n\n## License\n\nIMAS-Core is released under the [LGPL-3.0 License](LICENSE.txt)\n\n## Support\n\n- **Email**: imas-support@iter.org\n- **Documentation**: https://imas-core.readthedocs.io/\n- **Issues**: https://github.com/iterorganization/IMAS-Core/issues\n\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiterorganization%2Fimas-core","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fiterorganization%2Fimas-core","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fiterorganization%2Fimas-core/lists"}