new doc generator