webarkit / webarkit/jsfeatNext
[Tracking] jsfeat parity, refactor and modernization roadmap
@kalwalt is already working on this.
Since Jul 21, 2026.
- Dominant language
- TypeScript
- Stars
- 12
- Forks
- 4
- Avg merge
- 16h 24m
- Merged PRs (30d)
- 34
Description
Roadmap
Tracking issue for the jsfeatNext <-> jsfeat parity, refactoring and modernization effort.
Full plan: docs/jsfeat-parity-and-refactor-audit.md
Work items
- Phase 0 gate - test harness: https://github.com/webarkit/jsfeatNext/issues/39
- Feature parity audit (Axis 1): https://github.com/webarkit/jsfeatNext/issues/45
- API/behavioral parity (Axis 2): https://github.com/webarkit/jsfeatNext/issues/41
- De-duplicate stubs/monolith (Axis 3/4): https://github.com/webarkit/jsfeatNext/issues/47
- Target architecture (Axis 4): https://github.com/webarkit/jsfeatNext/issues/40
- Build modernization -> Vite (Axis 5): https://github.com/webarkit/jsfeatNext/issues/42
-
Port haar (Appendix A)— deferred to theSomedaymilestone: https://github.com/webarkit/jsfeatNext/issues/43 -
Port bbf (Appendix A)— deferred to theSomedaymilestone: https://github.com/webarkit/jsfeatNext/issues/44
Status (2026-08-18): five of eight done, two deferred, one live.
The checklist above had fallen out of date — #39, #41, #47 and #42 had been
closed for weeks without being ticked, and #40 closed on 2026-08-17 — so this
issue was showing the effort as barely started when it is in fact nearly
finished.
#43 and #44 (haar, bbf) have been deliberately deferred to the Someday
milestone. They are face/object detection cascades: they serve no part of the
planar natural-feature WebAR pipeline that #96 and #97 define as the project's
direction, they block nothing, and the README already declares them
unimplemented, so no promise is broken by not having them. They are deferred
rather than closed because the evaluation is worth preserving — should anyone
ever want them, note that haar needs the tilted integral-image branch, which
carries the same first-column defect as #131.
#45 is the only live item. docs/jsfeat-parity-and-refactor-audit.md §1.1
has the module-level map, but §1.2 only describes the method for the
function-and-parameter enumeration; that enumeration has never been carried out,
and tests/api-shape.test.ts asserts the 0.9.0 calling convention rather than
per-symbol coverage. Nothing today would notice a missing jsfeat method.
This issue closes when #45 lands, with haar/bbf continuing in Someday —
otherwise it stays open indefinitely, held hostage by two items that have been
decided against for now.
Work that has moved on since this roadmap was written is tracked separately: the
1.0.0 milestone (correctness fixes and the CvBackend contract) and the 1.1.0
milestone (features2d expansion — see docs/features2d-expansion-plan.md).
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Assessment
This issue has not been assessed yet.