Skip to content

Releases: vsfedorenko/go-arch-lint

Release list

v1.0.0

Choose a tag to compare

@github-actions github-actions released this 08 Jul 23:15

What's new

First release of the Go DSL fork. Configuration is now plain Go code — type-safe, IDE-autocompleted, no YAML or JSON Schema.

Breaking changes from upstream

  • Config format: YAML (.go-arch-lint.yml) → Go DSL (.go-arch-lint/main.go)
  • Module path: github.com/fe3dback/go-arch-lintgithub.com/vsfedorenko/go-arch-lint
  • Removed: YAML decoder, JSON Schema validator, cmdtest test framework
  • CLI: root binary is now a launcher; check/graph/mapping delegate to .go-arch-lint/ via go run

Features

  • Go DSL config — describe architecture as Go code with compile-time validation
  • Programmatic APIarchlint.Run() / archlint.MustRun() for library use
  • Graph output formatssvg, d2, plantuml, mermaid
  • Scaffold commandgo-arch-lint init generates .go-arch-lint/{go.mod,main.go}
  • Deep scan — analyzes method calls and dependency injections, not just imports
  • Examples — basic (layered), DDD, hexagonal architecture demos
  • Bilingual docs — Russian (primary) and English README with language switcher

Install

go install github.com/vsfedorenko/go-arch-lint@v1.0.0

Docker image available on GHCR:

docker run --rm -v ${PWD}:/app ghcr.io/vsfedorenko/go-arch-lint:1.0.0 check --project-path /app

Quick start

go-arch-lint init
go-arch-lint check
go-arch-lint graph --format=mermaid

Forked from fe3dback/go-arch-lint © fe3dback.