System Design

JSX Tool can be integrated in a couple of different ways. Conceptually, all installations follow a similar pattern.

Architecture Overview (Non-Vite)

JSX Tool's dev server creates a bridge between your browser and filesystem, enabling the Chrome extension to read and modify your source code in real-time. The system is designed to be lightweight, framework-agnostic, and secure.

JSX Tool System Design Architecture Diagram

Components

Browser Extension

Receives the WebSocket address to connect to the JSX Tool dev server.

JSX Tool WebSocket Server (Dev Server)

A lightweight WebSocket server that is scoped to reads and writes from the base of your React project.

Your Project Web Server

You need to communicate the WebSocket server address by either manually setting the variable in the <head> tag yourself or by utilizing the proxy server.

JSX Tool Proxy Server

Intercepts document requests and attempts to inject the WebSocket address into the <head> tag.

Security Considerations

  • File system scope — The server only accesses files within your project directory and configured additional directories.