From b1b8c4d5c8518673f1ae2ccb75a697f1e53050b8 Mon Sep 17 00:00:00 2001 From: aliang <1098486429@qq.com> Date: Wed, 24 Jul 2024 16:14:18 +0800 Subject: [PATCH] feat(ui): add contributing markdown (#2708) * feat(ui): add contributing markdown * update README.md --- ee/tabby-ui/README.md | 33 ++++++++++++++++++++++++++++++++- 1 file changed, 32 insertions(+), 1 deletion(-) diff --git a/ee/tabby-ui/README.md b/ee/tabby-ui/README.md index 6d7e4c3df46b..d3e869e48d92 100644 --- a/ee/tabby-ui/README.md +++ b/ee/tabby-ui/README.md @@ -1,3 +1,34 @@ # Tabby UI -Run `yarn dev` to start the development server, and use `TABBY_FRONTEND_URI=localhost:3000 cargo ...` to start tabby server with the development frontend. +## 🤝 Contribuing + +### Local Setup +Full guide at [CONTRIBUTING.md](https://github.com/TabbyML/tabby/blob/main/CONTRIBUTING.md#local-setup) + +### Running +During local development, we use Caddy to orchestrate Tabby-UI and local Tabby. We run both the Tabby-UI server and the local Tabby server simultaneously, using Caddy to forward frontend and backend requests to their respective servers, reducing the need for host and port configuration and taking advantage of the hot-reload feature of tabby-ui. +The Caddy configuration file is located [here](https://github.com/TabbyML/tabby/blob/main/ee/tabby-webserver/development/Caddyfile). + +Regarding the Tabby binary in production distribution, we do not start the tabby-ui server and Caddy server. Instead, tabby-ui is solely built and outputs static assets. Routing is configured within Tabby to distribute the static assets produced by tabby-ui. + +#### 1. Start the development frontend server + +``` +cd tabby/ee/tabby-ui +pnpm dev +``` + +#### 2. Start the development backend server + +``` +cargo run serve --port 8081 +``` + +#### 3.Start the caddy server + +``` +make caddy +``` + +#### 4. Start hacking +Now, you can open `http://localhost:8080` to see the tabby webserver! \ No newline at end of file