 
                         run = ->
                             service.use '/', renderer.static('doc')
-                            service.listen opts.port, ->
-                                log '>> Server start at port: '.cyan + opts.port
+                            service.use '/dist', renderer.static('dist')
+                            service.use '/bower_components', renderer.static('bower_components')
+                            { port } = opts
+                            service.listen port, ->
+                                log '>> Server start at port: '.cyan + port
 
                         if opts.rebuild
                             @_build()

        builder.start()

    _build_doc: =>
        remove('doc', {
            isFollowLink: false
        }).then ->
            Promise.all([
                spawn('compass', [
                    'compile'
                    '--sass-dir', 'src/css'
                    '--css-dir', 'doc/css'
                    '--no-line-comments'
                ])
                spawn('doxx', [
                    '-d'
                    '-R', 'README.md'
                    '-t', 'MuPlayer 『百度音乐播放内核』'
                    '-s', 'dist'
                    '-T', 'doc_temp'
                    '--template', 'src/doc/base.jade'
                ])
            ])
        .then ->
            copy_to = (from, to) ->
                kit.copy 'doc_temp/' + from, 'doc/' + to

            Promise.all([
                copy_to 'player.js.html', 'api.html'

                    for p in paths
                        to = 'doc/' + kit.path.basename p
                        log '>> Link: '.cyan + p + ' -> '.cyan + to
                        symlink '../' + p, to
            ]

module.exports = NofileBuilder
