add demo and docs