Skip to content

Instantly share code, notes, and snippets.

View subkitsupport's full-sized avatar

subkit.io support subkitsupport

View GitHub Profile
const graphql = require('graphql');
const GraphQLRelay = require('graphql-relay');
const introspectionQuery = require('graphql/utilities').introspectionQuery;
state.graphql_todos = state.graphql_todos || {};
var nodeDefinitions = GraphQLRelay.nodeDefinitions(function(globalId) {
var idInfo = GraphQLRelay.fromGlobalId(globalId);
if (idInfo.type == 'Todo') return state.graphql_todos[idInfo];
if (idInfo.type == 'Todos') return state.graphql_todos;
@subkitsupport
subkitsupport / graphql-relay-client.tpl-ejs.html
Last active January 18, 2016 10:02
How to GraphQL and Relay Client
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>React and GraphQL Todo-App</title>
</head>
<body>
<div id="todoApp"></div>
<footer>
<br><br>
@subkitsupport
subkitsupport / graphql-todos.task.js
Last active January 18, 2016 06:57
How to GraphQL and Relay
const graphql = require('graphql');
const GraphQLRelay = require('graphql-relay');
state.graphql_todos = state.graphql_todos || {};
var nodeDefinitions = GraphQLRelay.nodeDefinitions(function(globalId) {
var idInfo = GraphQLRelay.fromGlobalId(globalId);
if (idInfo.type == 'Todo') return state.graphql_todos[idInfo];
return null;
});
const request = require('request-promise');
if(!req.query.code)
return res.redirect(`https://github.com/login/oauth/authorize?client_id=${options.GITHUB_OAUTH_CLIENT_ID}&scope=${options.GITHUB_OAUTH_SCOPE}&redirect_uri=${options.GITHUB_OAUTH_CALLBACK_URL}${req.query.success_url}`);
request({
url: `https://github.com/login/oauth/access_token?client_id=${options.GITHUB_OAUTH_CLIENT_ID}&client_secret=${options.GITHUB_OAUTH_CLIENT_SECRET}&code=${req.query.code}`,
method: 'POST',
json: true
})
@subkitsupport
subkitsupport / graphql-todo-app.tpl-ejs.html
Last active January 11, 2016 09:53
React and GraphQL Todo-App
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<title>React and GraphQL Todo-App</title>
</head>
<body>
<div id="todoApp"></div>
<footer>
<br><br>
@subkitsupport
subkitsupport / demographql.task.js
Last active January 10, 2016 08:35
How to use GraphQL
const graphql = require('graphql');
state.graphql_todos = state.graphql_todos || {};
var todoType = new graphql.GraphQLObjectType({
name: 'Todo',
fields: {
id: { type: graphql.GraphQLInt },
isDone: { type: graphql.GraphQLBoolean},
description: { type: graphql.GraphQLString },
}
@subkitsupport
subkitsupport / howto-handle-event-stream-ajax.tpl-ejs.html
Created December 28, 2015 07:45
How to handle Event-Stream with AJAX
<!DOCTYPE html>
<html>
<head><title>LOG Event-Stream</title></head>
<body>
<h1>LOG Event-Stream</h1>
<ul id="changesList">
<li>stream started</li>
</ul>
</body>
<script src="//cdnjs.cloudflare.com/ajax/libs/jquery/3.0.0-alpha1/jquery.min.js"></script>
@subkitsupport
subkitsupport / oauth-app.task.js
Last active December 28, 2015 05:29
Showrooms OAUTH App
/*
GitHub: create GitHub-App https://github.com/settings/applications
Twitter: create Twitter-App https://apps.twitter.com
Facebook: https://developers.facebook.com/apps
Google: create Google-App https://console.developers.google.com
*/
const request = require('request-promise');
const OAuth = require('oauth');
@subkitsupport
subkitsupport / chatmessage.task.js
Last active December 26, 2015 09:05
SubKit Chat App - Rooms
this.GET = history;
this.POST = send;
this[req.method](req.params.id, req.body);
function history(key){
res.send([]);
}
@subkitsupport
subkitsupport / howto-handle-publish-subscribe-event-stream.job.js
Last active December 26, 2015 06:55
How to handle publish/subscribe to Event-Stream
const EventEmitter = require('events').EventEmitter;
let count = 0;
events.myStream = events.myStream || new EventEmitter();
events.myStream.removeAllListeners('data');
events.myStream.on('data', handleEvents);
var intervalRef = setInterval(() => {
events.myStream.emit('data', { message: 'my event', count: count++ });
}, 5000);