diff --git a/bin/build-react-app.js b/bin/build-react-app.js
deleted file mode 100644
index 4e16fa9835ac5c9a524e95926afa09142319a78d..0000000000000000000000000000000000000000
--- a/bin/build-react-app.js
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/usr/bin/env node
-require('../scripts/build');
diff --git a/bin/eject-react-app.js b/bin/eject-react-app.js
deleted file mode 100644
index 3a4141bb6042e5567bc641995cabc9414769e166..0000000000000000000000000000000000000000
--- a/bin/eject-react-app.js
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/usr/bin/env node
-require('../scripts/eject');
diff --git a/bin/react-scripts.js b/bin/react-scripts.js
new file mode 100644
index 0000000000000000000000000000000000000000..3f924225ae34d2c8377290931502a324474abfe4
--- /dev/null
+++ b/bin/react-scripts.js
@@ -0,0 +1,21 @@
+#!/usr/bin/env node
+var path = require('path');
+var spawn = require('cross-spawn');
+var script = process.argv[2];
+var args = process.argv.slice(3);
+
+switch (script) {
+case 'build':
+case 'start':
+case 'eject':
+  spawn(
+    'node',
+    [path.resolve(__dirname, '..', 'scripts', script)].concat(args),
+    {stdio: 'inherit'}
+  );
+  break;
+default:
+  console.log('Unknown script "' + script + '".');
+  console.log('Perhaps you need to update react-scripts?');
+  break;
+}
diff --git a/bin/start-react-app.js b/bin/start-react-app.js
deleted file mode 100644
index a287171b9fe714c8603dd3521ec2daf5fd963af1..0000000000000000000000000000000000000000
--- a/bin/start-react-app.js
+++ /dev/null
@@ -1,2 +0,0 @@
-#!/usr/bin/env node
-require('../scripts/start');
diff --git a/package.json b/package.json
index acf92fb967a7d224198994af369386ee247466d0..33ba2bd5ac6db9153e141051bcba58d0f0ed610c 100644
--- a/package.json
+++ b/package.json
@@ -21,9 +21,7 @@
     "template"
   ],
   "bin": {
-    "start-react-app": "./bin/start-react-app.js",
-    "build-react-app": "./bin/build-react-app.js",
-    "eject-react-app": "./bin/eject-react-app.js"
+    "react-scripts": "./bin/react-scripts.js"
   },
   "dependencies": {
     "autoprefixer": "6.3.7",
diff --git a/scripts/eject.js b/scripts/eject.js
index bf4c42ff05abf7b2e3462d8de1e916756f696cef..4237d699d28a080cdb60217ab69e73465d760a9d 100644
--- a/scripts/eject.js
+++ b/scripts/eject.js
@@ -36,9 +36,9 @@ prompt('Are you sure you want to eject? This action is permanent. [y/N]', functi
 
   console.log('Ejecting...');
   console.log();
+
   var selfPath = path.join(__dirname, '..');
   var hostPath = path.join(selfPath, '..', '..');
-
   var files = [
     path.join('config', 'babel.dev.js'),
     path.join('config', 'babel.prod.js'),
@@ -73,7 +73,6 @@ prompt('Are you sure you want to eject? This action is permanent. [y/N]', functi
    content = content.replace(/^\/\*\*(\*(?!\/)|[^*])*\*\//, '').trim() + '\n';
    fs.writeFileSync(path.join(hostPath, file), content);
   });
-
   console.log();
 
   var selfPackage = require(path.join(selfPath, 'package.json'));
@@ -109,5 +108,4 @@ prompt('Are you sure you want to eject? This action is permanent. [y/N]', functi
   console.log('Please consider sharing why you ejected in this survey:');
   console.log('  http://goo.gl/forms/Bi6CZjk1EqsdelXk1');
   console.log();
-
 });
diff --git a/scripts/init.js b/scripts/init.js
index 8c8366dc8ec31a7722ef8eb37d7dea3635859152..1b8c981cbbc7b837318d452ae1576f4c87254a9f 100644
--- a/scripts/init.js
+++ b/scripts/init.js
@@ -26,8 +26,7 @@ module.exports = function(hostPath, appName, verbose) {
   // Setup the script rules
   hostPackage.scripts = {};
   ['start', 'build', 'eject'].forEach(function(command) {
-    hostPackage.scripts[command] =
-      command + '-react-app';
+    hostPackage.scripts[command] = 'react-scripts ' + command;
   });
 
   fs.writeFileSync(
@@ -53,7 +52,7 @@ module.exports = function(hostPath, appName, verbose) {
     copySync(
       path.join(selfPath, 'template', filename),
       path.join(hostPath, filename)
-    );    
+    );
   });
 
   // Run another npm install for react and react-dom