# refactor\(web\): the connections page's pure helpers live in ConnectionsSettings.logic · PR \#22683 · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/pull/22683)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

State: merged

Source repository: pingdotgg/t3code

Source branch: refactor/settings-split-connections-logic

Target branch: main

Head commit: a7a033c64d5a555dbc9ae12e78d30744b519986d

[Discussion and reviews](https://git.cafe/pingdotgg/t3code/pull/22683)

[Commits](https://git.cafe/pingdotgg/t3code/pull/22683/commits?format=markdown)

[Files changed](https://git.cafe/pingdotgg/t3code/pull/22683/diffs?format=markdown)

## Description

---

`ConnectionsSettings.tsx` was 4,025 lines. This layer moves its pure helpers (pairing URL parsing, SSH target parsing, sorting, endpoint selection, share hints) into the existing `ConnectionsSettings.logic.ts`, unchanged.

| File | Before | After |
|---|---|---|
| ConnectionsSettings.tsx | 4025 | 3767 |
| ConnectionsSettings.logic.ts | 168 | 443 |

Renders: pure move, no render change.

Tests run: `tsc-rs --noEmit` for apps/web, `vp lint` on changed files, `vp test run src/reactCompilerCoverage.test.ts -t settings/` (0 bailouts), `SettingsPanels.logic.test.ts`, `ConnectionsSettings.logic.test.ts`.

🤖 Generated with [Claude Code](https://claude.com/claude-code)

