aboutsummaryrefslogtreecommitdiff
path: root/src/client/react/index.js
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/react/index.js')
-rw-r--r--src/client/react/index.js36
1 files changed, 36 insertions, 0 deletions
diff --git a/src/client/react/index.js b/src/client/react/index.js
new file mode 100644
index 0000000..122d54b
--- /dev/null
+++ b/src/client/react/index.js
@@ -0,0 +1,36 @@
+import React from 'react';
+import ReactDOM from 'react-dom';
+import moment from 'moment';
+import { Provider } from 'react-redux';
+import { BrowserRouter as Router, Route } from 'react-router-dom';
+import { createStore, applyMiddleware, compose } from 'redux';
+import logger from 'redux-logger';
+import thunk from 'redux-thunk';
+import reducer from './reducers';
+import Index from './components/page/Index';
+import User from './components/page/User';
+
+moment.locale('nl');
+
+// eslint-disable-next-line no-underscore-dangle
+const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || compose;
+const store = createStore(
+ reducer,
+ composeEnhancers(applyMiddleware(thunk, logger)),
+);
+
+ReactDOM.render(
+ <Provider store={store}>
+ <Router>
+ <div>
+ <Route exact path="/" component={Index} />
+ <Route path="/:type/:value" component={User} />
+ </div>
+ </Router>
+ </Provider>,
+ document.getElementById('root'),
+);
+
+// We only want to focus the input on page load. NOT on a in-javascript
+// redirect. This is because that is when people usually want to start typing.
+document.querySelector('.search input').focus();