~ knotless Search/
↑↓ move↵ open⇧↵ all results

chadtmiller.com/knotless

git that lives in your Atmosphere account

knotless.dev
1 collaborator

knotless 0.13.0 Latest 2 packages, 1 image

1
10

The iOS app's repository and profile screens follow GitHub's

Merged
Merged chadtmiller.com asked to merge into main from chadtmiller.com/knotless:ios/repo-profile

What changes

A repository is laid out as GitHub's app lays one out: its owner, name, description, website and stars, then Star, fork and notification buttons, then bands of rows for issues, pulls, actions and releases with the latest beneath them, the branch with a way to change it, code and commits, and the README.

New screens and writes. Actions lists a repository's runs, Releases its releases with each one's notes and files, Commits a branch's history, and Repositories an account's. The app can now fork a repository, after asking, choose what to hear of one, and follow an account.

A profile has a Follow button, a Repositories row and cards of recent repositories.

Why

The two screens were plain lists that left out much of what the server already answers, and could not change branch, see runs or follow anyone.

How it was checked

Drawn with just ios-look, including the new commits, releases, actions, person and repositories screens, with the notification menu and the branch sheet open, and looked at. ios/check-models.sh reads the recorded answers of the four new lists and holds the seven new writes to their lexicons.

Shortcomings

Fork, follow and the notification choice have not been run against the real server, only held to their lexicons. getRepo gives no fork count and getActorRepos no star counts, so a repository shows no forks and the profile's cards are recent rather than GitHub's popular. Commits shows no total, as listCommits gives none. A run's row opens nothing yet.

🤖 Generated with Claude Code

ios-repo-bob-test-bob-test-tally-dark.png

ios-person-light.png

Approved

This pull reworks the iOS repository and profile screens to follow GitHub's layout. It adds Commits, Releases, Actions and Repositories screens, a branch picker, and the Fork, notification-level and Follow writes.

I read the Swift, model, write, route and look-script changes. I skipped the SVG and asset-catalog JSON files, which are icon data. The check, ios, web, lexicons, shots, e2e and docs checks have passed. test was still running when I looked, and the diff touches no Rust.

  • Consistency: the new writes are listed in ModelCheck, so ios.yml holds them to their lexicons. Every oct-* icon the new views use exists in the asset catalog. Client.answer(to:) reuses the recorded-answer path, so ios-look can draw a fork.
  • Not tested against a server: as the body says, Fork, Follow and the notification choice have not been run against the real server. Please try each once before relying on them.
  • Minor, no change needed:
    • HearMenu shows no checkmark if the server ever returns participating as the viewer's subscription instead of omitting it.
    • The profile's Repositories row shows repos.count from a single getActorRepos call. If that call is paged, the count would be a lower bound.
Merged as 29bed4a