Zally is a quality assurance tool. It's a linter for OpenAPI specifications, it performs the following tasks :
Its standard configuration will check your APIs against the rules defined in Zalando's RESTful Guidelines, but anyone can use it out-of-the-box.
Zally has an easy-to-use CLI which uses the server in the background so that you can check your API on the spot. It also features an intuitive Web UI that shows implemented rules and lints external files and (with its online editor) API definitions.
x-zally-ignore
extension)Trying out Zally is easy. You can build and run the whole Zally stack (web-ui, server and database) by executing:
docker compose up -d
Web UI is accessible on http://localhost:8080
; Zally server on http://localhost:8000
Please consult the following documents for further information:
Zally welcomes contributions from the open source community. To get started, take a look at our contributing guidelines. Then check our Project Board and Issues Tracker for ideas.
Feel free to join our Gitter room or contact one of the maintainers directly.
Zally is not the only linter for OpenAPI v2 and v3. There is an article comparing different OpenAPI linters.
So why should you choose Zally?
MIT license with an exception. See license file.
OSSRH_JIRA_USERNAME
and OSSRH_JIRA_PASSWORD
environment variables to access Maven Central Repo are
configuredCreate a separate branch with a name release-<release-version>
.
Update current version in server/gradle.properties
from -SNAPSHOT
to a final version.
Update mime types configuration:
./gradlew -q generate-media-types-config --info
Commit the updated file to the repository.
Release Zally server and API using the command
cd server
./gradlew clean build publishAllPublicationsToMavenRepository
Commit server/gradle.properties
with the release version
Create a tag
git tag v<release-version> -m "Version <release-version>"
Bump version in server/gradle.properties
to the next -SNAPSHOT
Push release
branch and tag
git push origin
git push origin <tag-name>
Create a Pull Request with the version update
Create and publish a release with a new version in GitHub