diff --git a/html.js b/html.js
index 227dd9a..998626a 100644
--- a/html.js
+++ b/html.js
@@ -1 +1 @@
-module.exports = require('./lib/html')
+module.exports = require('./lib/html.js')
diff --git a/index.js b/index.js
index 624255d..3a3ea65 100644
--- a/index.js
+++ b/index.js
@@ -1 +1 @@
-module.exports = require('./lib/syntax')
+module.exports = require('./lib/syntax.js')
diff --git a/lib/index.js b/lib/index.js
index b64479d..ca230a5 100644
--- a/lib/index.js
+++ b/lib/index.js
@@ -1 +1 @@
-module.exports = require('./syntax')
+module.exports = require('./syntax.js')
diff --git a/lib/syntax.js b/lib/syntax.js
index 8fe4164..e8bac07 100644
--- a/lib/syntax.js
+++ b/lib/syntax.js
@@ -2,9 +2,9 @@
module.exports = directive
-var directiveText = require('./tokenize-directive-text')
-var directiveLeaf = require('./tokenize-directive-leaf')
-var directiveContainer = require('./tokenize-directive-container')
+var directiveText = require('./tokenize-directive-text.js')
+var directiveLeaf = require('./tokenize-directive-leaf.js')
+var directiveContainer = require('./tokenize-directive-container.js')
function directive() {
return {
diff --git a/lib/tokenize-directive-container.js b/lib/tokenize-directive-container.js
index 6aecc77..7038026 100644
--- a/lib/tokenize-directive-container.js
+++ b/lib/tokenize-directive-container.js
@@ -6,9 +6,9 @@ exports.concrete = true
var markdownLineEnding = require('micromark/dist/character/markdown-line-ending')
var createSpace = require('micromark/dist/tokenize/factory-space')
var prefixSize = require('micromark/dist/util/prefix-size')
-var createAttributes = require('./factory-attributes')
-var createLabel = require('./factory-label')
-var createName = require('./factory-name')
+var createAttributes = require('./factory-attributes.js')
+var createLabel = require('./factory-label.js')
+var createName = require('./factory-name.js')
var label = {tokenize: tokenizeLabel, partial: true}
var attributes = {tokenize: tokenizeAttributes, partial: true}
diff --git a/lib/tokenize-directive-leaf.js b/lib/tokenize-directive-leaf.js
index fb964eb..a1b1375 100644
--- a/lib/tokenize-directive-leaf.js
+++ b/lib/tokenize-directive-leaf.js
@@ -4,9 +4,9 @@ exports.tokenize = tokenizeDirectiveLeaf
var markdownLineEnding = require('micromark/dist/character/markdown-line-ending')
var createSpace = require('micromark/dist/tokenize/factory-space')
-var createAttributes = require('./factory-attributes')
-var createLabel = require('./factory-label')
-var createName = require('./factory-name')
+var createAttributes = require('./factory-attributes.js')
+var createLabel = require('./factory-label.js')
+var createName = require('./factory-name.js')
var label = {tokenize: tokenizeLabel, partial: true}
var attributes = {tokenize: tokenizeAttributes, partial: true}
diff --git a/lib/tokenize-directive-text.js b/lib/tokenize-directive-text.js
index 19caf99..f1f673e 100644
--- a/lib/tokenize-directive-text.js
+++ b/lib/tokenize-directive-text.js
@@ -3,9 +3,9 @@
exports.tokenize = tokenizeDirectiveText
exports.previous = previous
-var createAttributes = require('./factory-attributes')
-var createLabel = require('./factory-label')
-var createName = require('./factory-name')
+var createAttributes = require('./factory-attributes.js')
+var createLabel = require('./factory-label.js')
+var createName = require('./factory-name.js')
var label = {tokenize: tokenizeLabel, partial: true}
var attributes = {tokenize: tokenizeAttributes, partial: true}
diff --git a/test.js b/test.js
index 45684dc..4739ba7 100644
--- a/test.js
+++ b/test.js
@@ -2,7 +2,7 @@ var test = require('tape')
var micromark = require('micromark/lib')
var voids = require('html-void-elements')
var syntax = require('.')
-var html = require('./html')
+var html = require('./html.js')
test('micromark-extension-directive (syntax)', function (t) {
t.test('text', function (t) {