Hello, I recently authored an package called "om.el" which is a functional org-mode API akin to dash.el primarily using org-element. Briefly, it provides a library of (mostly) pure functions that manipulate the parse tree generated by org-element.el, and uses this to either edit or query the buffer with all the advantages of functional programming (eg lack of side effects, referential transparency, easier testing, etc). The github repo for om.el is here: https://github.com/ndwarshuis/om.el.
I'm posting to the mailing list a) for general feedback on this package and b) because I am wondering if this would be a good package to include with org-mode itself rather than in another repository such as MELPA. The code for om.el is tightly integrated with org-element.el and it might make sense for development between these to be closely intertwined. There is also an open submission for this to MELPA and the discussion is here: https://github.com/melpa/melpa/pull/6623. Thank you, Nathan Dwarshuis