* We begin by formulating from first principles the Griffith's crack growth law as a minimum total energy principle governing the evolution of a cracked elastic solid. The evolution of the mechanical system corresponds to the time-continuous minimisation of the total energy function; however, in the case of competing crack growth, the principle of maximum energy dissipation rate can not be applied to yield a unique solution. Consequently, it is required to solve a constrained quadratic optimization problem.
* We describe three solution strategies to the problem of competing crack growth for different fracture front stabilities, i.e. for stable, unstable, or partially stable configurations of crack tips. The suitability and limitations of each approach are discussed.
* The minimum energy criterion for the crack extension direction is equivalently posed as the criterion of vanishing rotational dissipation rate with respect to the rotation of a crack tip extension. This alternative form lends itself to a straightforward application to a discrete framework involving finite-length crack tip extensions and multiple propagating cracks, which is addressed in Parts II and III of this three-part paper.
* Finally, we make available the open-source Matlab code including documentation, benchmark and example cases as supplementary material for the verification of our results and with the hope that the code can be useful in general.