First, thank you for contributing to Apache Flagon!
All Apache Flagon components (UserALE.js, UserALE Browser Extension, Distill, Protobuf schemas, and the Project Website) are maintained in the unified apache/flagon monorepo.
All changes to Apache Flagon should correspond to a GitHub Issue so work can be discussed and tracked transparently.
Clone the repository and create a topic branch from master:
git clone https://github.com/apache/flagon.git
cd flagon
git checkout -b feat/your-feature-name
If you use Nix with flakes enabled, run:
nix develop
This provides Node.js, pnpm, TypeScript, Python 3, buf, and lefthook git hooks automatically.
products/userale): Node.js >= 20.x and pnpm >= 10.xproducts/distill): Python >= 3.8 and poetry (or uv)proto/): buf CLIproducts/userale)cd products/userale
pnpm install
pnpm build
pnpm --dir packages/flagon-userale test
pnpm format
pnpm lint
products/distill)cd products/distill
poetry install --all-groups
poetry run pytest
proto/)buf lint
buf generate
--no-verify).apache/flagon referencing the issue number (e.g. Closes #123).