Skip to content

Feat: Create page components around data/state layer for Sandbox details/inspect #79

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Merged
merged 168 commits into from
Jul 31, 2025

Conversation

ben-fornefeld
Copy link
Member

@ben-fornefeld ben-fornefeld commented Jun 23, 2025

This pr connects the new state/api layer changes from #78 to the user interface. It utilizes next.js ssr and streaming features to:

  • preload sandbox details on the server and stream down in layout.tsx
  • preload sandbox root fs on the server in /inspect/page.tsx and hydrate client
  • /inspect/page.tsx client initializes inspect state & establishes connection to the sandbox via e2b sdk, as implemented in Feat: Application layer for sandbox details/inspect view #78

UI States

Sandbox running, default inspect view

Screenshot 2025-07-30 at 1 55 41 PM

Sandbox running, user tries to set an invalid root path

Screenshot 2025-07-30 at 1 56 36 PM

Sandbox running, but watcher could not be created (no live updates)

Screenshot 2025-07-30 at 4 41 32 PM

Sandbox stopped, local state remaining inspect view

Screenshot 2025-07-30 at 1 55 58 PM

Sandbox stopped, user tries to change root path of local state

Screenshot 2025-07-30 at 1 56 14 PM

Copy link

linear bot commented Jun 23, 2025

Copy link

vercel bot commented Jun 23, 2025

The latest updates on your projects. Learn more about Vercel for Git ↗︎

Name Status Preview Comments Updated (UTC)
web ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 31, 2025 11:07am
web-juliett ✅ Ready (Inspect) Visit Preview 💬 Add feedback Jul 31, 2025 11:07am

@ben-fornefeld ben-fornefeld force-pushed the create-page-layout-e2b-2464 branch from 3018bb7 to d20d57c Compare June 23, 2025 14:24
@ben-fornefeld ben-fornefeld force-pushed the create-page-layout-e2b-2464 branch from d20d57c to 42134d8 Compare June 23, 2025 14:30
@ben-fornefeld ben-fornefeld force-pushed the create-page-layout-e2b-2464 branch 3 times, most recently from 0edfd68 to e95e447 Compare June 23, 2025 14:46
@ben-fornefeld ben-fornefeld force-pushed the create-page-layout-e2b-2464 branch from e95e447 to e16ef9f Compare June 23, 2025 15:47
@ben-fornefeld ben-fornefeld force-pushed the create-page-layout-e2b-2464 branch from e16ef9f to 6fb546f Compare June 23, 2025 16:30
@ben-fornefeld ben-fornefeld force-pushed the create-page-layout-e2b-2464 branch from 8268ed7 to 6fb546f Compare June 23, 2025 17:42
@ben-fornefeld ben-fornefeld force-pushed the create-page-layout-e2b-2464 branch 2 times, most recently from 8c8e3a5 to 0e710ed Compare June 24, 2025 17:41
@ben-fornefeld ben-fornefeld force-pushed the create-page-layout-e2b-2464 branch from 0e710ed to 34caf3e Compare June 25, 2025 13:26
@ben-fornefeld ben-fornefeld force-pushed the create-page-layout-e2b-2464 branch from bcd4dca to ea991c2 Compare June 25, 2025 15:40
…lesystem watcher parameters in SandboxManager for improved performance and reliability
…e layout of NotFound component for better user experience
… errors and updating error messages for better clarity
@ben-fornefeld ben-fornefeld force-pushed the create-page-layout-e2b-2464 branch from ccef0e5 to bf10b32 Compare July 30, 2025 14:39
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR creates page components around the data/state layer for Sandbox details/inspect functionality, utilizing Next.js SSR and streaming to preload data and connect the frontend to the new state/API layer.

  • Adds comprehensive sandbox inspect functionality with filesystem exploration and real-time updates
  • Implements server-side data preloading and client-side state management for sandbox details
  • Creates responsive UI components for file inspection, resource monitoring, and sandbox management

Reviewed Changes

Copilot reviewed 79 out of 82 changed files in this pull request and generated 7 comments.

Show a summary per file
File Description
src/features/dashboard/sandbox/ New sandbox detail pages with inspect functionality and context providers
src/ui/primitives/ Enhanced UI components with animations, styling updates, and new props
src/server/sandboxes/ Server actions for sandbox data fetching and state management
src/types/filesystem.ts Type definitions for filesystem operations and events
src/configs/ New configuration constants for versioning, URLs, and intervals
src/app/dashboard/[teamIdOrSlug]/sandboxes/[sandboxId]/ New page routes for sandbox details and inspect views
Comments suppressed due to low confidence (1)

src/features/dashboard/sandbox/inspect/filesystem.tsx:42

  • There's an extra space in the closing div tag. It should be </div> instead of </ div>.
    </ div>

ben-fornefeld and others added 3 commits July 30, 2025 18:50
…ving conditional classNames for improved readability
Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
@ben-fornefeld
Copy link
Member Author

@jakubno i addressed copilot review

…t for improved data fetching and state management
…dir' in sandbox components for consistency and clarity
@ben-fornefeld ben-fornefeld merged commit 536c45d into main Jul 31, 2025
4 checks passed
@ben-fornefeld ben-fornefeld deleted the create-page-layout-e2b-2464 branch July 31, 2025 15:38
ben-fornefeld added a commit to ben-fornefeld/dashboard that referenced this pull request Jul 31, 2025
…ils/inspect (e2b-dev#79)

This pr connects the new state/api layer changes from e2b-dev#78 to the user
interface. It utilizes next.js ssr and streaming features to:
- preload sandbox details on the server and stream down in `layout.tsx`
- preload sandbox root fs on the server in `/inspect/page.tsx` and
hydrate client
- `/inspect/page.tsx` client initializes inspect state & establishes
connection to the sandbox via `e2b` sdk, as implemented in e2b-dev#78

<img width="2034" height="1273" alt="Screenshot 2025-07-30 at 1 55
41 PM"
src="https://github.com/user-attachments/assets/c5931549-ab56-43fa-9946-82d05f6914d7"
/>

<img width="2034" height="1266" alt="Screenshot 2025-07-30 at 1 56
36 PM"
src="https://github.com/user-attachments/assets/adbe6412-2cb9-4e52-8655-2b8d23ac8c59"
/>

<img width="1813" height="1266" alt="Screenshot 2025-07-30 at 4 41
32 PM"
src="https://github.com/user-attachments/assets/f308d920-bbf6-46f4-af3d-26a9f86e6606"
/>

<img width="2035" height="1266" alt="Screenshot 2025-07-30 at 1 55
58 PM"
src="https://github.com/user-attachments/assets/4aab0f0d-3170-4b89-b28e-ee09fc2902e5"
/>

<img width="2036" height="1266" alt="Screenshot 2025-07-30 at 1 56
14 PM"
src="https://github.com/user-attachments/assets/dc366a4b-2c06-48c8-ab46-df2f38687bc8"
/>

---------

Co-authored-by: Copilot <175728472+Copilot@users.noreply.github.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants