Find all articulation points using Tarjan's algorithm.
Use a stack to track edges during DFS.
When you backtrack from a child where low[v] >= disc[u], pop edges from the stack until you reach . These edges form a biconnected component.
Each biconnected component is defined by the edges (and their incident vertices) popped in step . This is more complex than -edge-connected components because you need to track edge stacks during DFS.