     scripts = @options.addScripts.concat([])
     npmPackage = JSON.parse(fs.readFileSync('package.json'))
     userDist = "dist/#{npmPackage.name}.js"
-    scripts.push(userDist) if fs.existsSync(userDist)
+    scripts.push(userDist) if fs.existsSync(userDist) && userDist not in scripts
     
     scriptTags = for script in scripts
-      "<script>#{fs.readFileSync(script)}</script>"
+      console.log "adding script tag for #{script}" if @options.verbose
+      "<script>#{@_getSourceCode(script)}</script>"
     
     return scriptTags.join('\n')
       
-    
+      
+  _getSourceCode: (script) ->
+    src = fs.readFileSync(script).toString()
+    # use strict seems to mess with JSDOM (or our code isn't strict enough (fu u pedantic f's))
+    return src.replace('"use strict";', '')
   
   
    # their rendering
    html = """
      <div id="demo"></div>
      <script>
        #{fs.readFileSync('dist/react-datum.js')}
        window.ReactDatum = ReactDatum
      </script>
      <script id="exampleScript">#{fs.readFileSync(exampleScriptFile)}</script>
    """
    # console.log "WTF", html
    
    $('body').html(html)
    
    #console.log "woohoo"

    done()



      # specify additional scripts to load relative to your project root. Note that
      # if a package named dist/#{package.json:name}.js exists, that is added automatically
      addScripts: []
      verbose: false
      
    
  
