code: function create () {
      if (dir && !opts.temp && !key && (opts.indexing !== false)) {
        // Only set opts.indexing if storage is dat-storage
        // TODO: this should be an import option instead, https://github.com/mafintosh/hyperdrive/issues/160
        opts.indexing = true
      }
      if (!key) return createArchive()
  
      resolveDatLink(key, function (err, resolvedKey) {
        if (err) return cb(err)
        key = resolvedKey
        createArchive()
      })
  
      function createArchive () {
        archive = hyperdrive(storage, key, opts)
        archive.on('error', cb)
        archive.ready(function () {
          debug('archive ready. version:', archive.version)
          if (hasDat || (archive.metadata.has(0) && archive.version)) {
            archive.resumed = true
          } else {
            archive.resumed = false
          }
          archive.removeListener('error', cb)
  
          cb(null, Dat(archive, opts))
        })
      }
    }
docs: Create the archive and call `archive.ready()` before callback.
  Set `archive.resumed` if archive has a content feed.
  @private