diff --git a/src/views/nodes/ReposView.svelte b/src/views/nodes/ReposView.svelte
new file mode 100644
index 000000000..90e3e28c0
--- /dev/null
+++ b/src/views/nodes/ReposView.svelte
@@ -0,0 +1,168 @@
+
+
+
+
+
+ {#await fetchRepoInfos(baseUrl, { show: listState, perPage, page })}
+
+
+
+ {:then repoInfos}
+ {#if repoInfos.length > 0}
+
+ {#each repoInfos as repoInfo}
+
+ {/each}
+
+
+ {:else}
+
+ {#if listState === "pinned"}
+
+ {:else}
+
+ {/if}
+
+ {/if}
+ {:catch error}
+ {router.push(handleError(error, baseUrlToString(baseUrl)))}
+ {/await}
+
diff --git a/src/views/nodes/View.svelte b/src/views/nodes/View.svelte
index b145ebda1..1b742f41b 100644
--- a/src/views/nodes/View.svelte
+++ b/src/views/nodes/View.svelte
@@ -1,12 +1,8 @@