add generate demos