auto-documentation from components