Skip to content

Latest commit

 

History

History
50 lines (35 loc) · 2.44 KB

File metadata and controls

50 lines (35 loc) · 2.44 KB

Contributing to Eclipse Docks

Thank you for your interest in contributing to Eclipse Docks.

License

By contributing, you agree that your contributions will be licensed under the Eclipse Public License 2.0 (EPL-2.0).

Eclipse Contributor Agreement

Before your first contribution can be accepted, you must complete the Eclipse Contributor Agreement (ECA). The ECA is a one-time agreement that applies to all Eclipse Foundation projects.

How to contribute

  1. Open an issue — For bugs or feature requests, open an issue to discuss.
  2. Fork and clone — Fork the repository and clone your fork locally.
  3. Create a branch — Use a short, descriptive branch name (e.g. fix/command-palette, feat/settings-panel).
  4. Make changes — Follow the existing code style and run the test suite.
  5. Commit — Use clear commit messages. Sign off your commit (e.g. git commit -s) to confirm the ECA.
  6. Push and open a PR — Push your branch and open a pull request against main. Reference any related issues.

Development setup

git clone https://github.com/eclipse-docks/core.git
cd core
npm install
npm run dev          # run the default app
npm run test         # run unit tests (Vitest in core)
npm run build:app    # build core and app
npm run type-check   # TypeScript check

Testing

  • Unit tests: npm run test — Vitest in @eclipse-docks/core.
  • End-to-end: npm run test:e2e — Playwright against the minimal app in packages/app-e2e (builds core + E2E shell, serves preview, runs specs in packages/app-e2e/e2e/). Install browsers once:
    npm run playwright:install-chromium
    (on fresh Linux CI images use npm run playwright:install-chromium-ci, as in .github/workflows/ci.yml).
  • E2E harness and strategy (tab order, coupled-editor specs, CI behavior): see packages/app-e2e/README.md.

Code and PR expectations

  • Keep changes focused; prefer smaller PRs.
  • Ensure npm run test, npm run type-check, and npm run test:e2e pass when your change affects UI, contributions, or extension loading.
  • New features or API changes may require updates to docs under docs/.

Questions

For questions or discussion, open a GitHub Discussion or an issue.