I’m using a combination of An introduction to OCaml PPX ecosystem | Tarides, PPX for plugin authors — ppxlib documentation and reading the AST here parsetree.mli.
Outside of that this issue Some info about Outreachy winter 2021/22 has good information. Plus looking at the implementation of things like ppx_deriving.
The community could use more documentation about this topic. Compared to Template Haskell we are quite short on blog posts and other docs.