Skip to content

[Feature]: Add Makefile and document common project commands #294

@sundaram2021

Description

@sundaram2021

Problem Statement

Currently the codebase does not provide a central Makefile for common development commands. Contributors need to manually discover setup, test, lint, format, build, and Docker-related commands from different files or docs.

The contribution documentation also does not reference a single command workflow, which can make onboarding and local development less consistent.

Proposed Solution

Add a root-level Makefile with common project commands, then update the contribution documentation to use those commands.

Suggested commands:

  • make help
  • make install
  • make test
  • make lint
  • make format
  • make check
  • make build
  • make clean
  • make docker-up
  • make docker-down

Also update contribution files such as CONTRIBUTING.md and CONTRIBUTIONS.md so contributors can follow the Makefile-based workflow.

Alternatives Considered

The project could continue documenting raw commands directly in Markdown files, but this creates duplication and makes commands easier to drift over time.

Another option is to rely only on package-specific scripts, but a Makefile gives contributors one consistent entry point regardless of the underlying tools.

Additional Context

A Makefile would improve contributor onboarding, local development consistency, and command discoverability.

Implementation Ideas

  • Add .PHONY targets for all Makefile commands.
  • Include a make help target that lists available commands.
  • Keep each target aligned with the existing project tooling.
  • Update contribution docs to prefer make <command> examples.
  • Avoid changing runtime behavior; this should be a developer-experience improvement only.

Metadata

Metadata

Assignees

Labels

enhancementNew feature or request

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions