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.
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.
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.
- JDK 1.8+ for Server
- Golang 1.7+ for CLI
- Node.js 7.6+ for Web UI
- (Optional) PostgreSQL database for Server
- (Optional) Docker if you want to containerize
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