Coding
PromptBeginner5 minmarkdown
Nano Banana Pro
Agent skill for nano-banana-pro
6
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
Sign in to like and favorite skills
This file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.
npm run dev - Start development server with hot reload using tsx watchnpm run build - Compile TypeScript to JavaScript in dist/ directorynpm start - Run the built application from dist/npm test - Run all tests using Vitestnpm run test:watch - Run tests in watch modenpm run test:coverage - Run tests with coverage reportnpm run lint - Format and lint code using Biome (auto-fixes issues)npm run lint:check - Check linting without auto-fixingnpm run typecheck - Run TypeScript type checking without compilationsrc/services/http-forwarder.ts): Direct HTTP forwarding to target URLs with proper header handlingsrc/services/websocket-manager.ts): Robust WebSocket client with automatic reconnection, subscription management, and ping/pong keepalivesrc/services/aws-clients.ts): Pre-configured AWS SDK v3 clients for DynamoDB, S3, SQS, SSM, and STSPOST /api/compiler/:compilerid/compile - Handles compilation requests for specific compilersPOST /api/compiler/:compilerid/cmake - Handles CMake build requestsPOST /:env/api/compiler/:compilerid/compile - Environment-prefixed compilation requests (beta, staging)POST /:env/api/compiler/:compilerid/cmake - Environment-prefixed CMake requestsGET /healthcheck - Health status including WebSocket connection stateThe service maintains a persistent WebSocket connection to
wss://events.compiler-explorer.com/beta (configurable) for real-time communication. The WebSocketManager provides:
PORT or CLI flag --port (default: 3000)WEBSOCKET_URL or CLI flag --websocketAWS_REGION (default: us-east-1)The service supports two routing methods:
transfer-encoding when setting content-length)The codebase is a TypeScript replacement for an AWS Lambda function, designed to handle Compiler Explorer routing requests with both WebSocket-based real-time communication and direct HTTP forwarding.