docs: function copyResources( project, sources, config ) {
    const dependenciesForAllFiles = [];
    if ( !Util.isEmpty( sources ) ) {
      sources.forEach( function forEachSource( sourceHTML ) {
        const output = sourceHTML.tag( "output" ) || {};
        if ( !Array.isArray( output.modules ) ) {
          return;
        }
        output.modules.forEach( function forEachModule( module ) {
          if ( dependenciesForAllFiles.indexOf( module ) < 0 ) {
            dependenciesForAllFiles.push( module );
          }
        } );
      } );
    }
    if ( dependenciesForAllFiles.length > 0 ) {
      console.log( "Copying resources...".cyan );
      dependenciesForAllFiles.forEach( function forEachDependencyFile( module ) {
        const src = project.srcOrLibPath( module );
        if ( src ) {
          const dst = project.wwwPath( Util.replaceFirstSubFolder( module, 'css/' ) );
          project.copyFile( src, dst );
        }
      } );
    }
  
    // Extra resources defined in `package.json`.
    const extraResources = config.tfw.resources || [];
    extraResources.forEach( function forEachExtraResource( res ) {
      console.log( `Extra resource: ${res.cyan}` );
      project.copyFile(
        project.srcPath( res ),
        project.wwwPath( res )
      );
    } );
  }