index.js

 1import { install } from '@material-ui/styles';
 2import ThemeProvider from '@material-ui/styles/ThemeProvider';
 3import { createMuiTheme } from '@material-ui/core/styles';
 4import ApolloClient from 'apollo-boost';
 5import React from 'react';
 6import { ApolloProvider } from 'react-apollo';
 7import ReactDOM from 'react-dom';
 8import { BrowserRouter } from 'react-router-dom';
 9
10install();
11
12// TODO(sandhose): this is temporary until Material-UI v4 goes out
13const App = React.lazy(() => import('./App'));
14
15const theme = createMuiTheme();
16
17const client = new ApolloClient({
18  uri: '/graphql',
19});
20
21ReactDOM.render(
22  <ApolloProvider client={client}>
23    <BrowserRouter>
24      <ThemeProvider theme={theme}>
25        <React.Suspense fallback={'Loading…'}>
26          <App />
27        </React.Suspense>
28      </ThemeProvider>
29    </BrowserRouter>
30  </ApolloProvider>,
31  document.getElementById('root')
32);