Skip to content

Instantly share code, notes, and snippets.

@evserykh
evserykh / App.jsx
Created February 17, 2017 13:17
App.jsx
import React from 'react';
import { BrowserRouter, Link, Route } from 'react-router-dom';
import HelloWorld from './HelloWorld';
const App = () => (
<BrowserRouter>
<div>
<ul>
<li>
@evserykh
evserykh / package.json
Created February 16, 2017 13:18
package.json
{
"license": "MIT",
"scripts": {
"dev:server": "node src/js/server.dev.js"
},
"dependencies": {
"express": "^4.14.1",
"pug": "^2.0.0-beta11",
"react": "^15.4.2",
"react-dom": "^15.4.2"
@evserykh
evserykh / HelloWorld.jsx
Last active February 17, 2017 13:26
HelloWorld.jsx
import React from 'react';
const HelloWorld = props => <h1>Hello World from {props.location.pathname}</h1>;
export default HelloWorld;
@evserykh
evserykh / index.js
Last active February 17, 2017 13:31
index.js
import React from 'react';
import { render } from 'react-dom';
import App from './components/App';
render(<App />, document.getElementById('root'));
@evserykh
evserykh / .babelrc
Created February 16, 2017 12:44
.babelrc
{
"presets": [
["es2015", { "modules": false }],
"react",
"stage-0"
]
}
@evserykh
evserykh / webpack.dev.config.js
Created February 16, 2017 12:25
webpack.dev.config.js
var path = require('path');
var config = {
entry: path.join(__dirname, 'src/js/index.js'),
output: {
path: '/',
publicPath: 'http://localhost:3000/',
filename: 'bundle.js'
},
@evserykh
evserykh / index.pug
Last active February 16, 2017 10:03
index.pug
doctype html
html
head
meta(charset='UTF-8')
title React Universal App
body
#root
script(src='/bundle.js')
@evserykh
evserykh / server.dev.js
Created February 16, 2017 09:48
server.dev.js
var express = require('express');
var path = require('path');
var webpack = require('webpack');
var webpackDevMiddleware = require('webpack-dev-middleware');
var webpackConfig = require(path.join(__dirname, '../../webpack.dev.config.js'));
var app = express();
var compiler = webpack(webpackConfig);
app.set('view engine', 'pug');