tree: 08da5cba05ec4ca50a5957bc64f834914e3af2d4 [path history] [tgz]
  1. src/
  2. esbuild.go
  3. Makefile
  4. memfs.go
  5. package-lock.json
  6. package.json
  7. postcss.config.js
  8. readme.md
  9. tailwind.config.js
  10. tsconfig.json
loop/webui/readme.md

Loop WebUI

A modern web interface for the CodingAgent loop.

The server in the sibling directory (../server) exposes an HTTP API for the CodingAgent.

Development

This module contains a TypeScript-based web UI for the Loop service. The TypeScript code is compiled into JavaScript using esbuild, and the resulting bundle is served by the Go server.

Prerequisites

  • Node.js and npm
  • Go 1.20 or later

Setup

# Install dependencies
make install

# Build the TypeScript code
make build

# Type checking only
make check

Development Mode

For development, you can use watch mode:

make dev

This will rebuild the TypeScript files whenever they change.

Integration with Go Server

The TypeScript code is bundled into JavaScript using esbuild and then served by the Go HTTP server. The integration happens through the webui package, which provides a function to retrieve the built bundle.

The server code accesses the built web UI through the webui.GetBundle() function, which returns a filesystem that can be used to serve the files.

File Structure

  • src/: TypeScript source files
  • dist/: Generated JavaScript bundle
  • esbuild.go: Go code for bundling TypeScript files
  • Makefile: Build tasks