Skip to content

Instantly share code, notes, and snippets.

View drenther's full-sized avatar
🏠
Working from home

Soumyajit Pathak drenther

🏠
Working from home
View GitHub Profile
@drenther
drenther / db.json
Last active August 28, 2017 21:01
demo db
{
"products" : [
{
"id" : 1,
"name" : "Crib One",
"desc" : "Cribs of the first kind. It's like a heavenly cloud to make your babies sleep sound.",
"price" : 45.99,
"thumbnail": "./assets/crib1.jpg",
"images": ["./assets/crib2.jpg", "./assets/crib3.jpg", "./assets/crib4.jpg", "./assets/crib5.jpg"]
},
@drenther
drenther / .babelrc
Created June 17, 2018 16:44
.babelrc for react-ssr
{
"presets": [
[
"env",
{
"targets": {
"browsers": ["last 2 versions"],
"node": "8.11.3"
}
}
@drenther
drenther / App.js
Created June 17, 2018 16:59
App.js for react-ssr
import React, { Component } from 'react';
import { Switch, Navlink, Route } from 'react-router-dom';
import Navbar from './components/Navbar';
import NoMatch from './components/NoMatch';
import UniversalDataloader from './components/UniversalDataloader';
import routes from './routes';
class App extends Component {
@drenther
drenther / apiCalls.js
Created June 17, 2018 18:49
All the API requests for react-ssr
import axios from 'axios';
const baseUri = 'http://localhost:3002';
export const fetchAllMovies = () =>
axios
.get(`${baseUri}/movies`)
.then(({ data }) => data)
.catch(e => {
console.log(e);
@drenther
drenther / UniversalDataloader.js
Last active June 17, 2018 18:58
UniversalDataloader.js for react-ssr
import { Component } from 'react';
class UniversalDataloader extends Component {
constructor(props) {
super(props);
let data;
if (__isBrowser__ && window.__SERIALIZED_DATA__) {
data = window.__SERIALIZED_DATA__;
delete window.__SERIALIZED_DATA__;
@drenther
drenther / routes.js
Created June 17, 2018 19:27
routes for react-ssr
import Home from './components/Home';
import Movie from './components/Movie';
import { fetchAllMovies, fetchMovieById } from './apiCalls';
const routes = [
{
path: '/',
exact: true,
C: Home,
@drenther
drenther / client.index.js
Created June 17, 2018 19:42
index.js for client of react-ssr
import React from 'react';
import { hydrate } from 'react-dom';
import { BrowserRouter } from 'react-router-dom';
import App from '../shared/App';
hydrate(
<BrowserRouter>
<App />
</BrowserRouter>,
@drenther
drenther / Home.js
Last active June 17, 2018 20:19
Presentational Components of react-ssr
import React from 'react';
import { Helmet } from 'react-helmet';
import { Link } from 'react-router-dom';
import Loading from './Loading';
const Home = ({ loading, data }) => (
<div className="home container">
<Helmet>
<title>FavMovies - Home</title>
@drenther
drenther / Main.js
Created June 24, 2018 18:52
Main.js of the style-components-tutorial
import styled from 'styled-components';
const Main = styled.div`
display: flex;
flex-direction: row;
flex-wrap: wrap;
align-items: flex-start;
justify-content: center;
align-content: flex-start;
`;
@drenther
drenther / User.pseudo-selector.js
Last active June 24, 2018 20:46
pseudo-selector usage in styled-components
/* src/User.js */
.
.
.
/* line 40 - 57 */
export default styled(User)`
width: 280px;