Skip to content

Latest commit

 

History

History
51 lines (36 loc) · 1.1 KB

File metadata and controls

51 lines (36 loc) · 1.1 KB

Contributing to threshpad

Prerequisites

  • Ubuntu 24+ or Fedora 40+ with GNOME 45+
  • Node.js 20+ (for ESLint)
  • batctl installed at /usr/local/bin/batctl

Setup

git clone https://github.com/looselyhuman/threshpad.git
cd threshpad
npm install   # installs ESLint

Testing without hardware

THRESHPAD_MOCK=1 gnome-extensions enable threshpad@looselyhuman

The extension will read from test/fixtures/ instead of live sysfs and skip all batctl invocations.

Code style

  • 4-space indent, single quotes, semicolons
  • JSDoc on all exported functions
  • All I/O in try/catch — a GJS exception takes GNOME Shell down with it

Run the linter before committing:

npx eslint extension/

Commit format

Follow Conventional Commits:

feat(panel): add live charge display
fix(sysfs): handle missing BAT1
chore: update dependencies

Branch strategy

  • main — tagged releases only
  • dev — working branch; open PRs against this
  • Feature branches: feat/description, fix/description