Skip to content

Latest commit

 

History

History
95 lines (65 loc) · 3.31 KB

File metadata and controls

95 lines (65 loc) · 3.31 KB

Contributing to Elementum CLI

Thank you for your interest in contributing to the Elementum CLI! We welcome contributions from the community and are grateful for any help you can provide.

Please read and follow our Code of Conduct in all interactions with the project.

How to Report Bugs

If you find a bug, please open a GitHub Issue and include:

  • Steps to reproduce the problem
  • Expected behavior vs. actual behavior
  • CLI version (ei --version)
  • Operating system and version
  • Any relevant error messages or logs

For security vulnerabilities, please follow the process in SECURITY.md instead of filing a public issue.

How to Request Features

Feature requests are welcome! Open a GitHub Issue with:

  • A clear description of the feature
  • The use case — what problem does it solve?
  • Any examples of how it would work

How to Submit a Pull Request

  1. Fork the repo and create a branch from main
  2. Name your branch using the convention type/short-description:
    • feat/add-export-widgets
    • fix/auth-token-refresh
    • docs/update-readme
    • chore/update-dependencies
  3. Write your code — keep PRs focused on a single feature or fix
  4. Use Conventional Commits for your commit messages (spec):
    • feat: add widget export command
    • fix: resolve token refresh on expired credentials
    • docs: update installation instructions
    • chore: update dependencies
  5. Verify your changes before submitting:
    go build ./...
    go test ./...
  6. Open a PR with a clear description of what the change does and why
  7. PRs require review from a code owner before merging

Contributor License Agreement (CLA)

All contributors must sign a Contributor License Agreement before their first PR can be merged. This is a one-time requirement.

When you open a pull request, the CLA bot will check whether you have already signed. If you haven't, it will post a comment with instructions. To sign, paste the following as a PR comment:

I have read the CLA Document and I hereby sign the CLA

The bot will record your signature and update the PR status automatically.

Development Setup

Prerequisites

  • Go 1.25.5 or later (see go.mod for the exact version)

Clone and Build

git clone https://github.com/elementumltd/elementum-cli.git
cd elementum-cli
go build -o ei .

Run Tests

go test ./...

Regenerate GraphQL Client

Regenerating the GraphQL client requires the schema.graphql file, which is not included in the repository. This step is only needed by Elementum maintainers when modifying the .graphql operation files in internal/client/operations/.

Community

Important Note About Commits

Please use your personal GitHub account for contributions, not a work email address.