# Handle contributor API failures with Effect · PR \#17 · screen/col

[View on GitCafe](https://git.cafe/screen/col/pull/17)

Repository: [screen/col](https://git.cafe/screen/col)

Visibility: public

State: merged

Source repository: screen/col

Source branch: effect-error-handling

Target branch: main

Head commit: 6987b509414a5f39395a55abf789a1d1fd90baa9

[Discussion and reviews](https://git.cafe/screen/col/pull/17)

[Commits](https://git.cafe/screen/col/pull/17/commits?format=markdown)

[Files changed](https://git.cafe/screen/col/pull/17/diffs?format=markdown)

## Description

---

## What changed
- Add Effect TS to both package lockfiles.
- Handle GitHub contributors request, HTTP, JSON, and schema failures through Effect while preserving the existing unavailable state.
- Validate contributor data before rendering and log failures on the server.

## Verification
- `npm run build`
- `npx tsc --noEmit`
- `node --test --experimental-strip-types lib/github-contributors.test.mjs` (Node 24)
- `git diff --check`

Effect handles this external data boundary. It does not automatically catch unrelated React or browser errors.

