Full example + docs