Skip to content

Instantly share code, notes, and snippets.

2015-01-29 Unofficial Relay FAQ

Compilation of questions and answers about Relay from React.js Conf.

Disclaimer: I work on Relay at Facebook. Relay is a complex system on which we're iterating aggressively. I'll do my best here to provide accurate, useful answers, but the details are subject to change. I may also be wrong. Feedback and additional questions are welcome.

What is Relay?

Relay is a new framework from Facebook that provides data-fetching functionality for React applications. It was announced at React.js Conf (January 2015).

@steida
steida / gist:9d80c9858d1bc31741d1
Last active August 29, 2015 14:19
Loading Pure component
import PureComponent from './purecomponent.react'
import React from 'react'
import classnames from 'classnames'
import {msg} from '../intl/store'
require('./loading.styl')
export default class Loading extends PureComponent {
constructor(props) {
@steida
steida / gist:570d007c94a25fa68443
Last active October 10, 2015 18:05
listenFirebase higher order component
import Component from './component.react';
import React from 'react';
import {firebase, onFirebaseError} from '../firebase';
import {firebaseCursor} from '../state';
// This is super handy for monitoring listened refs.
function addListenedRef(ref) {
firebaseCursor(firebase => firebase
.update('listenedRefs', listenedRefs => listenedRefs
// But unfortunately querystring is not part of serialization. Kato from
@XeeD
XeeD / README.md
Last active September 1, 2016 15:54
Este.js and react-transmit

Data fetching for Este with react-transmit

1) Without server rendering

Read the DOCS.

This is easy and straightforward. All you need is to add react-transmit into dependencies (npm install --save react-transmit). Transmit works as a Higher-order component so instead of

export default class Dashboard extends PureComponent {
 // ...
import Firebase from 'firebase';
import Promise from 'bluebird';
import {ValidationError} from './lib/validation';
import {firebaseCursor} from './state';
// if (!process.env.IS_BROWSER) {
// // TODO: Set Firebase for server.
// }
export const TIMESTAMP = Firebase.ServerValue.TIMESTAMP;
@RobertoSchneiders
RobertoSchneiders / deploy_with_ebcli3_on_circleci.md
Last active December 24, 2024 08:15
Settings to deploy to AWS Elastic Beanstalk on CircleCi (EB Cli 3)

This is how I configured the deploy of my rails apps to AWS Elastic Beanstalk through CircleCI 1.0.

If you are using the Circle CI 2.0, take a look at this article from ryansimms

Configure Environments Variables

On Project Settings > Environment Variables add this keys:

  • AWS_ACCESS_KEY_ID
  • AWS_SECRET_ACCESS_KEY
    The aws user must have the right permissions. This can be hard, maybe, this can help you.

How to setup AWS lambda function to talk to the internet and VPC

I'm going to walk you through the steps for setting up a AWS Lambda to talk to the internet and a VPC. Let's dive in.

So it might be really unintuitive at first but lambda functions have three states.

  1. No VPC, where it can talk openly to the web, but can't talk to any of your AWS services.
  2. VPC, the default setting where the lambda function can talk to your AWS services but can't talk to the web.
  3. VPC with NAT, The best of both worlds, AWS services and web.
@andykent
andykent / FastImg.css
Last active August 16, 2020 20:47
Render Medium style blurred preview images using react-imgix
.aspectWrapper {
position: absolute;
width: 100%;
height: 100%;
}
.wrapper {
position: absolute;
width: 100%;
height: 100%;
@simenbrekken
simenbrekken / schema.js
Created December 21, 2016 14:06
Firebase backed GraphQL schema
import firebase from 'firebase'
import { filter, map } from 'lodash'
import { makeExecutableSchema } from 'graphql-tools'
firebase.initializeApp({
databaseURL: 'https://grafire-b1b6e.firebaseio.com',
})
const mapSnapshotToEntity = snapshot => ({ id: snapshot.key, ...snapshot.val() })
const mapSnapshotToEntities = snapshot => map(snapshot.val(), (value, id) => ({ id, ...value }))
@knowbody
knowbody / circle.yml
Created May 31, 2017 07:59
Zeit now.sh and CircleCI config
machine:
environment:
PATH: "${PATH}:${HOME}/${CIRCLE_PROJECT_REPONAME}/node_modules/.bin"
node:
version: 7.10.0
dependencies:
override:
- yarn
cache_directories: