Skip to content

Installation

中文:安装与本地环境

Local development setup for UModel.

Requirements

ToolRequired forMinimum
GoService, CLI, MCP, Go tests1.22
MakeLocal workflowsany recent version
PythonSchema expansion, validation, SDK generation3.10
Node.jsWeb UI22
pnpmWeb UI dependencies9 preferred
Java + MavenJava SDK verificationJava 8 / Maven 3.6

Clone And Prepare

Repository-root setup:

bash
make check-env
make install-env

make check-env verifies Go, Python, Node.js, Web package-manager support, and optional Java/Maven tooling. make install-env creates .venv, installs Python dependencies from tools/requirements.txt, downloads Go modules, installs Web UI dependencies, and pre-resolves Java dependencies when Maven is available.

make setup is kept as an alias for make install-env.

Web Package Manager Resolution

The Web UI prefers pnpm 9 or newer, but the Makefile also supports:

  • corepack pnpm when corepack is available.
  • npm exec --package pnpm@<version> when npm is available.
  • Existing web/node_modules for local build/dev commands when dependencies are already installed.

Build Service Binaries

bash
make build-service

This builds:

  • umodel-server
  • umctl
  • umodel-mcp

Start Local Development Services

bash
make dev

Immediate demo workspace:

bash
make quickstart

make quickstart starts the same local services with GRAPHSTORE=memory and preloads the bundled multi-domain sample into demo.

Defaults:

SettingValue
APIhttp://localhost:8080
Web UIhttp://localhost:5173
GraphStorefile.memory
Data rootdata

Check status:

bash
make status

Stop local services:

bash
make stop-all

Run The API Without The Web UI

bash
go run ./cmd/umodel-server --addr :8080 --data data --graphstore file.memory

Run The Web UI

In another terminal:

bash
make dev-web

make dev-web uses the same package-manager resolution as make install-env.

Provider Selection

Normal local development:

bash
go run ./cmd/umodel-server --addr :8080 --data data --graphstore file.memory

Short-lived tests:

bash
go run ./cmd/umodel-server --addr :8080 --graphstore memory

Ladybug runtime:

bash
go run -tags ladybug ./cmd/umodel-server --addr :8080 --data data --graphstore local.ladybug

Verify The Checkout

bash
make guard
make test-service
make example-validate
make verify

For Web UI changes:

bash
make test-ui

make test-ui runs the Web UI type check and production build through the Makefile dependency wrapper.

Next Step

Continue with Quick Start.

Released under the Apache-2.0 License.