Skip to content

Latest commit

 

History

History
64 lines (45 loc) · 1.95 KB

File metadata and controls

64 lines (45 loc) · 1.95 KB

Contributing Guide

Thanks for helping improve 01cloud-status.

Before you start

  • Search existing issues and pull requests before opening a new one.
  • Use issues for bugs, feature requests, and larger proposal discussions.
  • For sensitive security reports, follow SECURITY.md instead of opening a public issue.

Local setup

  1. Fork and clone the repository.
  2. Copy .env.sample to .env.
  3. Install backend dependencies:
    • go mod download
  4. Install frontend dependencies:
    • cd frontend
    • npm ci
  5. Start the frontend locally:
    • npm run dev
  6. In another terminal, start the backend from the repository root:
    • make run

If you want the backend to serve the built frontend, run make frontend-build first.

Branches and commits

  • Prefer branch names like feat/..., fix/..., docs/..., or chore/....
  • Follow Conventional Commits. Allowed commit types are defined in commitlint.config.cjs.

Examples:

  • feat(api): add service status filter
  • fix(frontend): handle empty history response
  • docs(readme): clarify local setup

Pull request expectations

  • Keep changes focused and reviewable.
  • Add or update tests when behavior changes.
  • Update docs when APIs, configuration, or workflows change.
  • Avoid unrelated refactors in the same pull request.
  • Never commit secrets, kube credentials, or local .env files.

Recommended checks

Run the checks that match your change before opening a pull request:

  • make lint
  • make test
  • make frontend-lint
  • make frontend-build
  • pre-commit run --all-files

Review process

  • Maintainers may request changes before merging.
  • A pull request should describe the problem, the approach, and how it was validated.
  • Linking the pull request to an issue helps reviewers with context.

License for contributions

By submitting a contribution, you agree that your contributions will be licensed under the Apache License 2.0.