You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

70 lines
2.2 KiB

# Developer guide
This guide helps you get started developing HAMi-WebUI.
## Dependencies
Make sure you have the following dependencies installed before setting up your developer environment:
- [Git](https://git-scm.com/)
- [Go](https://golang.org/dl/) (see [go.mod](../../server/go.mod) for minimum required version)
- [Node.js](https://nodejs.org/), [Vue.js](https://vuejs.org/), [Element-UI](https://element.eleme.cn/)
### macOS
We recommend using [Homebrew](https://brew.sh/) for installing any missing dependencies:
```
brew install git
brew install go
brew install node@20
```
## Download HAMi-WebUI
We recommend using the Git command-line interface to download the source code for the HAMi-WebUI project:
1. Open a terminal and run `git clone https://github.com/Project-HAMi/HAMi-WebUI.git`. This command downloads HAMi-WebUI to a new `hami-webui` directory in your current directory.
2. Open the `HAMi-WebUI` directory in your favorite code editor.
For alternative ways of cloning the HAMi-WebUI repository, refer to [GitHub's documentation](https://docs.github.com/en/github/creating-cloning-and-archiving-repositories/cloning-a-repository).
## Build HAMi-WebUI
When building HAMi-WebUI, be aware that it consists of two components:
- The _backend_.
- The _frontend_.
### Backend
Build and run the backend by running `make run` in the `server` directory of the repository. This command compiles the Go source code and starts a backend server.
By default, you can access the web-ui-server-swagger at `http://localhost:8000/q/swagger-ui`.
### Frontend
Build and run the frontend by running `make start-dev` in the `root` directory of the repository. This command installs the related dependencies and starts a bff server and a frontend server.
By default, you can access the web-ui at `http://localhost:3000/`.
## Build a Docker image
To build a HAMi-WebUI Frontend Docker image, run:
```
make build-image DOCKER_IMAGE=projecthami/hami-webui-fe VERSION=dev
```
The resulting image will be tagged as `projecthami/hami-webui-fe:dev`.
To build a HAMi-WebUI Backend Docker image, run:
```
make build-image DOCKER_IMAGE=projecthami/hami-webui-be VERSION=dev
```
The resulting image will be tagged as `projecthami/hami-webui-be:dev`.