Skip to content

[Feature] Makefile for common development tasks #28

Description

@Siddhant-K-code

Summary

Add a Makefile with targets for build, test, lint, bench, release, and Docker operations.

Motivation

A Makefile standardizes the development workflow and makes it easy for new contributors to get started. It also documents the project's build and test commands in one place.

Targets

build          # go build -o distill .
test           # go test ./...
lint           # golangci-lint run
bench          # go test -bench=. -benchmem ./...
fmt            # gofmt -w .
vet            # go vet ./...
clean          # rm -f distill
docker-build   # docker build -t distill .
docker-run     # docker run with default flags
config-init    # ./distill config init
install        # go install
release-dry    # goreleaser --snapshot --clean
help           # list all targets

Acceptance Criteria

  • make (default) runs build
  • make test runs all tests
  • make lint runs golangci-lint
  • make help lists all targets with descriptions
  • README references make commands

Metadata

Metadata

Assignees

No one assigned

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions