From 1cb0ef4796a5b43ad6aa6ee26730342aa0b700ef Mon Sep 17 00:00:00 2001 From: royendo <67675319+royendo@users.noreply.github.com> Date: Fri, 23 Jan 2026 13:26:27 -0500 Subject: [PATCH 1/9] add clone command --- docs/docs/guides/clone-a-project.md | 8 +- .../projects/status/ProjectClone.svelte | 119 ++++++++++++++++++ .../[project]/-/status/+page.svelte | 2 + 3 files changed, 128 insertions(+), 1 deletion(-) create mode 100644 web-admin/src/features/projects/status/ProjectClone.svelte diff --git a/docs/docs/guides/clone-a-project.md b/docs/docs/guides/clone-a-project.md index 6fe8be2f339..cdb12ed9c27 100644 --- a/docs/docs/guides/clone-a-project.md +++ b/docs/docs/guides/clone-a-project.md @@ -42,10 +42,16 @@ cd
+ +If your project is not synced to a GitHub repository, use: ```bash -# Clone from Rill rill project clone ``` +If your project is synced to a GitHub repository, use: + +```bash +rill start https://github.com/username/rill-project.git +``` ## Step 2: Explore the Project Structure diff --git a/web-admin/src/features/projects/status/ProjectClone.svelte b/web-admin/src/features/projects/status/ProjectClone.svelte new file mode 100644 index 00000000000..be7ffe23e6c --- /dev/null +++ b/web-admin/src/features/projects/status/ProjectClone.svelte @@ -0,0 +1,119 @@ + + +{#if $proj.data} +
+ + Local Development + + + + Clone this project to develop locally. + + Learn more -> + + + +
+ {#if isGithubConnected} + + +
+ + Then pull environment variables: + + +
+ {:else} + + {/if} +
+
+{/if} + + diff --git a/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte b/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte index ba2ab04ec94..f27bbb65914 100644 --- a/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte +++ b/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte @@ -1,6 +1,7 @@ - +
-
- - +
+
+

+ Project status +

+
+ + +
+
diff --git a/web-admin/tests/projects.spec.ts b/web-admin/tests/projects.spec.ts index 75a24e526f2..13512a22e65 100644 --- a/web-admin/tests/projects.spec.ts +++ b/web-admin/tests/projects.spec.ts @@ -9,4 +9,23 @@ test.describe("Projects", () => { adminPage.getByRole("link", { name: "Settings" }), ).toBeVisible(); }); + + test("status page should show Local Development section", async ({ + adminPage, + }) => { + await adminPage.goto("/e2e/openrtb/-/status"); + + // Check Local Development header is visible + await expect(adminPage.getByText("Local Development")).toBeVisible(); + + // Check Learn more link is visible + await expect( + adminPage.getByRole("link", { name: "Learn more ->" }), + ).toBeVisible(); + + // Check clone command is visible (for non-GitHub connected project) + await expect( + adminPage.getByText("rill project clone openrtb"), + ).toBeVisible(); + }); }); From e06f33c74c94659fe8f0d156a11fba48e5c2b817 Mon Sep 17 00:00:00 2001 From: royendo <67675319+royendo@users.noreply.github.com> Date: Tue, 27 Jan 2026 10:15:54 -0500 Subject: [PATCH 3/9] looks --- .../projects/status/ProjectClone.svelte | 138 ++++++++++-------- .../[project]/-/status/+page.svelte | 17 +-- 2 files changed, 86 insertions(+), 69 deletions(-) diff --git a/web-admin/src/features/projects/status/ProjectClone.svelte b/web-admin/src/features/projects/status/ProjectClone.svelte index be7ffe23e6c..8c501347d5a 100644 --- a/web-admin/src/features/projects/status/ProjectClone.svelte +++ b/web-admin/src/features/projects/status/ProjectClone.svelte @@ -1,10 +1,14 @@ {#if $proj.data} -
+
Local Development + + + + - - Clone this project to develop locally. - - Learn more -> - - - -
- {#if isGithubConnected} - -
- - Then pull environment variables: - - -
- {:else} - + +
+ + Then pull environment variables: + + +
{:else} - + {/if} - - - {/if} -
+
+
+ +
{/if} @@ -113,6 +127,10 @@ @apply cursor-pointer w-full; } + .command-box:hover { + @apply bg-gray-100; + } + .env-note { @apply flex flex-col gap-y-1 mt-1 pt-2 border-t border-gray-100; } diff --git a/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte b/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte index df82bf1f800..330bfae1b1c 100644 --- a/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte +++ b/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte @@ -13,15 +13,14 @@
-
-
-

- Project status -

-
- - -
+

+ Project status +

+ +
+
+ +
From 6037897c57c6b9170f319eb2ab31f1a99afe590f Mon Sep 17 00:00:00 2001 From: royendo <67675319+royendo@users.noreply.github.com> Date: Tue, 27 Jan 2026 10:16:06 -0500 Subject: [PATCH 4/9] Update ProjectClone.svelte --- web-admin/src/features/projects/status/ProjectClone.svelte | 1 - 1 file changed, 1 deletion(-) diff --git a/web-admin/src/features/projects/status/ProjectClone.svelte b/web-admin/src/features/projects/status/ProjectClone.svelte index 8c501347d5a..639bbfd2832 100644 --- a/web-admin/src/features/projects/status/ProjectClone.svelte +++ b/web-admin/src/features/projects/status/ProjectClone.svelte @@ -59,7 +59,6 @@ - >
{#if isGithubConnected} + From 2f6907842492fad99ae020ad1d054f3a9442fd37 Mon Sep 17 00:00:00 2001 From: royendo <67675319+royendo@users.noreply.github.com> Date: Tue, 27 Jan 2026 11:12:28 -0500 Subject: [PATCH 6/9] update e2e --- web-admin/tests/projects.spec.ts | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/web-admin/tests/projects.spec.ts b/web-admin/tests/projects.spec.ts index 13512a22e65..206f86869d2 100644 --- a/web-admin/tests/projects.spec.ts +++ b/web-admin/tests/projects.spec.ts @@ -18,7 +18,10 @@ test.describe("Projects", () => { // Check Local Development header is visible await expect(adminPage.getByText("Local Development")).toBeVisible(); - // Check Learn more link is visible + // Click the Download project button to open popover + await adminPage.getByRole("button", { name: "Download project" }).click(); + + // Check Learn more link is visible in popover await expect( adminPage.getByRole("link", { name: "Learn more ->" }), ).toBeVisible(); From d85bb6ccc3dd646e1496f8bdb6b4a7ec571cf854 Mon Sep 17 00:00:00 2001 From: royendo <67675319+royendo@users.noreply.github.com> Date: Tue, 27 Jan 2026 11:16:36 -0500 Subject: [PATCH 7/9] fix small Ui views --- .../src/routes/[organization]/[project]/-/status/+page.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte b/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte index 330bfae1b1c..07ada8e7161 100644 --- a/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte +++ b/web-admin/src/routes/[organization]/[project]/-/status/+page.svelte @@ -17,8 +17,8 @@ Project status -
-
+
+
From f32483ba7ae753eb2c43ddf52634de231a2cc7e0 Mon Sep 17 00:00:00 2001 From: royendo <67675319+royendo@users.noreply.github.com> Date: Tue, 27 Jan 2026 11:52:16 -0500 Subject: [PATCH 8/9] fix e2e --- web-admin/src/features/projects/status/ProjectClone.svelte | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/web-admin/src/features/projects/status/ProjectClone.svelte b/web-admin/src/features/projects/status/ProjectClone.svelte index 72908b5fa59..5e9d71886a8 100644 --- a/web-admin/src/features/projects/status/ProjectClone.svelte +++ b/web-admin/src/features/projects/status/ProjectClone.svelte @@ -42,8 +42,8 @@ Local Development - - + + From 9025e613a8ebfdd7a0eeb0e287a00344b1205c6c Mon Sep 17 00:00:00 2001 From: royendo <67675319+royendo@users.noreply.github.com> Date: Tue, 27 Jan 2026 12:33:02 -0500 Subject: [PATCH 9/9] e23 --- web-admin/tests/projects.spec.ts | 7 +++++-- 1 file changed, 5 insertions(+), 2 deletions(-) diff --git a/web-admin/tests/projects.spec.ts b/web-admin/tests/projects.spec.ts index 206f86869d2..a89d5c3b51f 100644 --- a/web-admin/tests/projects.spec.ts +++ b/web-admin/tests/projects.spec.ts @@ -21,9 +21,12 @@ test.describe("Projects", () => { // Click the Download project button to open popover await adminPage.getByRole("button", { name: "Download project" }).click(); - // Check Learn more link is visible in popover + // Check Learn more link is visible in popover (filter by surrounding text to avoid ambiguity) await expect( - adminPage.getByRole("link", { name: "Learn more ->" }), + adminPage + .locator("span") + .filter({ hasText: "Clone this project to develop locally" }) + .getByRole("link", { name: "Learn more ->" }), ).toBeVisible(); // Check clone command is visible (for non-GitHub connected project)