add demo and documentation