title: How to serve ReactJS static files with expressJS?
body: <h1>The Problem</h1>
  
  <p>I have successfully served the index.html file of my React app, but the <code>index.js</code> that replaces <code>&lt;root&gt;</code> in the html file
  with my first React component is not triggering on <code>ReactDOM.render</code>.
  <em>How do I get the <code>index.js</code> file to start?</em> If my understanding of serving a React app is skewed in certain ways, I would greatly
  appreciate clarification.</p>
  
  <h2>Folder Structure</h2>
  
  <ul>
  <li>/ - contains all server-side files, including <code>server.js</code></li>
  <li>/client/ - contains all React files</li>
  <li>/client/build/ - contains all production-ready client files
  
  <ul>
  <li>/client/build/<code>index.html</code></li>
  <li>/client/build/static/js/<code>main.[hash].js</code> - seems to be a minified version of <code>index.js</code> that contains the <code>ReactDOM.render</code> for
  my React app</li>
  </ul></li>
  </ul>
  
  <h2>Current Deployment</h2>
  
  <ul>
  <li>I am using Facebook's create-react-app for the /client/ directory, including npm run build to automatically populate /client/build/</li>
  </ul>
  
  <h2>File Snippets</h2>
  
  <pre><code>// server.js
  let app = express();
  app.use(express.static(path.join(__dirname, '../client/public')));
  </code></pre>
  
  <p>This successfully loads the default index.html provided by
  create-react-app</p>
  
  <pre><code>// index.html
  &lt;body&gt;
    &lt;noscript&gt;
      You need to enable JavaScript to run this app.
    &lt;/noscript&gt;
    &lt;div id="root"&gt;&lt;/div&gt;
  &lt;/body&gt;
  </code></pre>
  
  <p>The above section of code may/may not be useful, but it is the default
  html file that comes with create-react-app. Do I need to replace the
  noscript tag with a script tag that references the minified <code>index.js</code>
  file? I have attempted that, and nothing changed, but perhaps it is
  because of incorrect relative path-making.</p>