# kalika-materials-platform (Python)

Materials-database connectors and pymatgen interoperability for the Kalika
materials platform (Phase 128.1.1.4).

- **Connectors** — `MaterialsProjectConnector`, `AflowConnector`,
  `JarvisConnector` translate a provider-agnostic `MaterialsQuery` into
  provider-specific requests and normalise responses into `MaterialsRecord`.
  The HTTP transport is injectable, so the connectors are testable offline; they
  fail loud (`NotConfigured`) when required credentials are missing rather than
  returning fabricated data.
- **pymatgen interop** — `to_pymatgen` / `from_pymatgen` convert between the
  dependency-free `Structure` and pymatgen's `Structure`. pymatgen is optional;
  conversion raises `PymatgenUnavailable` when it is not installed.

```bash
pip install -e .            # connectors (stdlib only)
pip install -e .[pymatgen]  # add pymatgen interop
pytest
```
