  Let X(F,G) be the G-character variety of F where G is a rank 1 complex affine
algebraic group and F is a finitely presentable discrete group. We describe an
algorithm, which we implement in Mathematica, SageMath, and in Python, that
takes a finite presentation for F and produces a finite presentation of the
coordinate ring of X(F,G). We also provide a new description of the defining
relations and local parameters of the coordinate ring when F is free. Although
the theorems used to create the algorithm are not new, we hope that as a
well-referenced exposition with a companion computer program it will be useful
for computation and experimentation with these moduli spaces.
