Title: Stop calling `api/projects/list` on every UI page · Issue #3473 · dstackai/dstack · GitHub
Open Graph Title: Stop calling `api/projects/list` on every UI page · Issue #3473 · dstackai/dstack
X Title: Stop calling `api/projects/list` on every UI page · Issue #3473 · dstackai/dstack
Description: Currently, UI call api/projects/list when loading practically any UI page (e.g. Runs, Fleets, Instances, etc) even when it doesn't seem to be necessary. This endpoint can be heavy for global admins (especially on Sky) since it returns al...
Open Graph Description: Currently, UI call api/projects/list when loading practically any UI page (e.g. Runs, Fleets, Instances, etc) even when it doesn't seem to be necessary. This endpoint can be heavy for global admins...
X Description: Currently, UI call api/projects/list when loading practically any UI page (e.g. Runs, Fleets, Instances, etc) even when it doesn't seem to be necessary. This endpoint can be heavy for global ad...
Opengraph URL: https://github.com/dstackai/dstack/issues/3473
X: @github
Domain: patch-diff.githubusercontent.com
{"@context":"https://schema.org","@type":"DiscussionForumPosting","headline":"Stop calling `api/projects/list` on every UI page","articleBody":"Currently, UI call `api/projects/list` when loading practically any UI page (e.g. Runs, Fleets, Instances, etc) even when it doesn't seem to be necessary. This endpoint can be heavy for global admins (especially on Sky) since it returns all projects on the server.\n\nThe main reason call `api/projects/list` seems to be `useProjectFilter` that allows filtering resources by project name. For this, we could introduce api endpoint to list project names only (perhaps by prefix, with a limit).\n\nAlso:\n* [`useCheckingForFleetsInProjects` should not `useGetProjectsQuery`](https://github.com/dstackai/dstack/blob/a07ef352779fad5aa2fdc0334314becc940ddd47/frontend/src/hooks/useCheckingForFleetsInProjectsOfMember.ts#L8) since there is already `useGetOnlyNoFleetsProjectsQuery`.\n* [TutorialPanel should not list all projects](https://github.com/dstackai/dstack/blob/a07ef352779fad5aa2fdc0334314becc940ddd47/frontend/src/layouts/AppLayout/TutorialPanel/hooks.ts#L47).\n* [Select only project names for events project filtering](https://github.com/dstackai/dstack/blob/a07ef352779fad5aa2fdc0334314becc940ddd47/frontend/src/pages/Events/List/hooks/useFilters.ts#L68).\n\nOverall, ensure the UI never lists all projects (besides Projects page currently). Introduce more efficient API if needed.\n\n**Ensure the same for `api/users/list`**.","author":{"url":"https://github.com/r4victor","@type":"Person","name":"r4victor"},"datePublished":"2026-01-19T12:33:43.000Z","interactionStatistic":{"@type":"InteractionCounter","interactionType":"https://schema.org/CommentAction","userInteractionCount":0},"url":"https://github.com/3473/dstack/issues/3473"}
| route-pattern | /_view_fragments/issues/show/:user_id/:repository/:id/issue_layout(.:format) |
| route-controller | voltron_issues_fragments |
| route-action | issue_layout |
| fetch-nonce | v2:f5517917-710e-09ec-8492-dd3421b6daba |
| current-catalog-service-hash | 81bb79d38c15960b92d99bca9288a9108c7a47b18f2423d0f6438c5b7bcd2114 |
| request-id | CDC2:89571:A45ED9:DAC99D:69812FCF |
| html-safe-nonce | 33f10a5f920d9ce10f2de73bef75ec0a359e957946877aabdf3e3a12d65dcc21 |
| visitor-payload | eyJyZWZlcnJlciI6IiIsInJlcXVlc3RfaWQiOiJDREMyOjg5NTcxOkE0NUVEOTpEQUM5OUQ6Njk4MTJGQ0YiLCJ2aXNpdG9yX2lkIjoiNTE2MDcwMzQ0NzYwMjkwMDk0MyIsInJlZ2lvbl9lZGdlIjoiaWFkIiwicmVnaW9uX3JlbmRlciI6ImlhZCJ9 |
| visitor-hmac | 4331894210ee2dc2287fd08c40416e91b4905b94b883ec7cadc8af768866c8f5 |
| hovercard-subject-tag | issue:3829529950 |
| github-keyboard-shortcuts | repository,issues,copilot |
| google-site-verification | Apib7-x98H0j5cPqHWwSMm6dNU4GmODRoqxLiDzdx9I |
| octolytics-url | https://collector.github.com/github/collect |
| analytics-location | / |
| fb:app_id | 1401488693436528 |
| apple-itunes-app | app-id=1477376905, app-argument=https://github.com/_view_fragments/issues/show/dstackai/dstack/3473/issue_layout |
| twitter:image | https://opengraph.githubassets.com/a9250c9c4488fb4f779702ccfebc0c7e630da157a0fd728bc115cf7f09a53352/dstackai/dstack/issues/3473 |
| twitter:card | summary_large_image |
| og:image | https://opengraph.githubassets.com/a9250c9c4488fb4f779702ccfebc0c7e630da157a0fd728bc115cf7f09a53352/dstackai/dstack/issues/3473 |
| og:image:alt | Currently, UI call api/projects/list when loading practically any UI page (e.g. Runs, Fleets, Instances, etc) even when it doesn't seem to be necessary. This endpoint can be heavy for global admins... |
| og:image:width | 1200 |
| og:image:height | 600 |
| og:site_name | GitHub |
| og:type | object |
| og:author:username | r4victor |
| hostname | github.com |
| expected-hostname | github.com |
| None | 39fe8101494cbb823c09b619b68c80cd4d05ab7279997038dbe06bb91608abe1 |
| turbo-cache-control | no-preview |
| go-import | github.com/dstackai/dstack git https://github.com/dstackai/dstack.git |
| octolytics-dimension-user_id | 54146142 |
| octolytics-dimension-user_login | dstackai |
| octolytics-dimension-repository_id | 444377346 |
| octolytics-dimension-repository_nwo | dstackai/dstack |
| octolytics-dimension-repository_public | true |
| octolytics-dimension-repository_is_fork | false |
| octolytics-dimension-repository_network_root_id | 444377346 |
| octolytics-dimension-repository_network_root_nwo | dstackai/dstack |
| turbo-body-classes | logged-out env-production page-responsive |
| disable-turbo | false |
| browser-stats-url | https://api.github.com/_private/browser/stats |
| browser-errors-url | https://api.github.com/_private/browser/errors |
| release | d5b34a4e4898b066c629879feb4b184bc471d6a7 |
| ui-target | full |
| theme-color | #1e2327 |
| color-scheme | light dark |
Links:
Viewport: width=device-width