Build Lightweight Python Client (`fds-client`)
Nobody has claimed this yet.
- Dominant language
- Python
- Stars
- 0
- Forks
- 1
- Avg merge
- 26m
- Merged PRs (30d)
- 24
Description
To support the "User-Driven Data Ingestion" architecture, fusion researchers need a simple, intuitive way to interact with FDS from their local computational environments (e.g., Jupyter Notebooks).
Acceptance Criteria:
- Develop a standalone pip-installable
fds-clientpackage. - Implement robust authentication flows (e.g., Device Code flow or handling local Keycloak tokens).
- Provide high-level wrappers around the REST API for creating metadata, linking sources, and consuming the bulk NDJSON export manifest into internal analytics objects (e.g., Pandas/Xarray).
Governing ADR(s): ADR 0016
Migrated from the internal tracker, where it was #5, opened 2026-02-25.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reading ADR 0016, then map the existing REST API and authentication approach described by the project. Scope the standalone pip-installable package around device-code or local Keycloak authentication, metadata and source-linking wrappers, and NDJSON manifest consumption into Pandas or Xarray objects. Done means the package is installable and all listed acceptance criteria are implemented.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- python
- Domain
- api, data
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Active
- Clarity
- Mostly clear
- Newbie friendliness
- 25/100