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
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`.
|