diff --git a/setup.py b/setup.py
index <HASH>..<HASH> 100644
--- a/setup.py
+++ b/setup.py
@@ -1,6 +1,8 @@
 # -*- coding: utf-8 -*-
 
 from setuptools import setup, find_packages
+from setuptools.command.sdist import sdist
+import subprocess
 
 with open('README.md', 'r', encoding='utf-8') as f:
     readme = f.read()
@@ -8,6 +10,13 @@ with open('README.md', 'r', encoding='utf-8') as f:
 with open('requirements.txt') as f:
     required = f.read().splitlines()
 
+
+class chainerui_sdist(sdist):
+    def run(self):
+        subprocess.call('cd frontend && npm run build', shell=True)
+        sdist.run(self)
+
+
 setup(
     name='chainerui',
     version='0.0.9',
@@ -30,4 +39,7 @@ setup(
         ]
     },
     tests_require=['pytest'],
+    cmdclass={
+        'sdist': chainerui_sdist
+    },
 )
Add `npm run build` executer when run `python setup.py sdist`