add io.coffee and fix ui