Operational/Administrator Manual
December 16, 2022 ยท View on GitHub
Architecture and Components

Server
Zally Server is the core of Zally tools and also the only component of the minimal setup. It provides a well-defined RESTful API to lint APIs, get information about past lintings, as well as provide information about implemented rules and statistics.
Optionally, you can connect Zally Server to a persistence layer, e.g. a PostgreSQL database. Per default, a in-memory database is provided automatically.
Web UI
The most intuitive and easy way to use Zally is to set up and run Zally Web UI. It provides a web interface to lint APIs and uses Zally Server to do the actual linting.
CLI
Zally CLI is a tiny tool written in Go which wraps HTTP calls to Zally Server. It's a tiny binary which can be distributed easily to use in different environments like local developer's machine, continuous delivery platforms, etc.
Technical Dependencies
- JDK 11+ for Server
- Golang 1.7+ for CLI
- Node.js 14+ for Web UI
- (Optional) PostgreSQL database for Server
- (Optional) Docker if you want to containerize
Build and Run
Please see the respective readmes for more details on how to build the components:
In general, there are 3 options to start a component:
- With the build tool (Gradle, Yarn)
- Build the source > start the bundle/jar/binary
- Build the source > build Docker image > run Docker container