MathOverflow will be down for maintenance for approximately 3 hours, starting Monday evening (06/24/2013) at approximately 9:00 PM Eastern time (UTC-4).

Kulkarni (Americal American J of Math, 113, 6, 1053-1133) gives a method to compute nice fundamental domains for the action of subgroups on $SL_2(\mathbf{Z})$ on the upper half-plane.
"Nice" means that in particular that the subgroup is a free product of the subgroups generated by the edge-pairing transformations. In the case of $\Gamma(N) =\ker SL_2(\mathbf{Z})\to SL_2 (\mathbf{Z} / {N})$ we have a free group and so we get a free system of generators. Kulkarni's approach is based on the observation that the congruence subgroups of $SL_2(\mathbf{Z})$ are in a bijection with "bipartite cuboid graphs", which are unitrivalent graphs with a cyclic order on the edges meeting at a trivalent vertex plus some extra data. However, Kulkarni's method involves "trial and error" and I don't think explicit sets of generators are known for general $N$.
Kulkarni (Americal J of Math, 113, 6, 1053-1133) gives a method to compute nice fundamental domains for the action of subgroups on $SL_2(\mathbf{Z})$ on the upper half-plane.
"Nice" means that in particular that the subgroup is a free product of the subgroups generated by the edge-pairing transformations. In the case of $\Gamma(N) =\ker SL_2(\mathbf{Z})\to SL_2 (\mathbf{Z} / {N})$ we have a free group and so we get a free system of generators. Kulkarni's approach is based on the observation that the congruence subgroups of $SL_2(\mathbf{Z})$ are in a bijection with "bipartite cuboid graphs", which are unitrivalent graphs with cyclic order on the edges meeting at a trivalent vertex plus some extra data. However, Kulkarni's method involves "trial and error" and I don't think explicit sets of generators are known for general $N$.