This is a demo project combining a Go backend with a TypeScript and React frontend. The application provides interactive controls that users can adjust, with changes automatically synchronized across all connected clients via WebSockets.
Screen.Recording.2024-12-31.at.2.55.13.PM.mov
Install the required dependencies:
npm install
npm run go:download
Start the development servers by running npm run dev
. This launches:
- React development server at
http://localhost:3000
- Go backend server at
http://localhost:8080
This project uses tygo to generate TypeScript type definitions from Go structs.
For convenience, the generated types are committed in /src/generated/types.ts
. If you need to regenerate the types:
- Install tygo:
npm run go:install:tygo
- Generate types:
npm run generate-types
Note: You may need to update your PATH to include the Go binary directory:
export PATH=${PATH}:`go env GOPATH`/bin
The UI is built using pure components.
Launch Storybook: npm run storybook