Skip to content

Instantly share code, notes, and snippets.

View thegoleffect's full-sized avatar

Van Nguyen thegoleffect

View GitHub Profile

Unionize: network superpowers for your docker containers

Unionize lets you connect together docker containers in arbitrarily complex scenarios.

Just check those examples.

LAMP stack with a private network between the MySQL and Apache containers

Let's create two containers, running the web tier and the database tier:

@thegoleffect
thegoleffect / travelogue-local.js
Last active December 14, 2015 08:49
travelogue LocalStrategy example
/* Remember to:
npm install hapi passport yar travelogue
*/
var Hapi = require('hapi');
var Travelogue = require('travelogue');
var Passport = require('passport');
var LocalStrategy = require('passport-local').Strategy;
@thegoleffect
thegoleffect / travelogue-facebook.js
Last active December 14, 2015 08:49
travelogue example
/* Remember to:
npm install hapi passport travelogue yar
*/
var Hapi = require('hapi');
var Travelogue = require('travelogue');
var Passport = require('passport');
var FacebookStrategy = require('passport-facebook').Strategy;
@thegoleffect
thegoleffect / gist:4733120
Created February 7, 2013 18:40
early interface for hapi-passport integration
var passport = require('passport');
var Hapi = require('hapi');
var util = require('util');
var FacebookStrategy = require('passport-facebook').Strategy
var server = new Hapi.Server('localhost', 8000);
// Passport
passport.use(new FacebookStrategy({
@thegoleffect
thegoleffect / joi.tentative.syntax.js
Created November 7, 2012 18:46
tentative Joi/Hapi general Object validation syntax
var O = Hapi.Types.Object;
var N = Hapi.Types.Number;
var schema = {
a: O({
b: N(),
c: N(),
d: O({
e: N(),
f: N()
@thegoleffect
thegoleffect / clark.coffee
Created April 11, 2012 21:19 — forked from friggeri/clark.coffee
Sparklines in CoffeeScript
#!/usr/bin/env coffee
ticks = ['▁','▂','▃','▄','▅','▆','▇','█']
exports.clark = (data) ->
m = Math.min data...
n = (Math.max(data...)-m)/(ticks.length - 1)
(ticks[(t-m)/n >> 0] for t in data).join('')
if require.main == module
data = process.argv
@thegoleffect
thegoleffect / jquery.ajax.post.js
Created February 23, 2012 18:24
ajax post example
$.ajax({
type: "POST",
url: url,
data: dataObj,
success: function(data){ },
error: function(err){ }
})
@thegoleffect
thegoleffect / minimal-logger.coffee
Created January 18, 2012 13:56 — forked from technoweenie/minimal-logger.coffee
Minimal node.js logger
# logger = require('logger').create()
# logger.info("blah")
# => [2011-3-3T20:24:4.810 info (5021)] blah
# logger.debug("boom")
# =>
# logger.level = Logger.levels.debug
# logger.debug(function() { return "booom" })
# => [2011-3-3T20:24:4.810 error (5021)] booom
class Logger
constructor: (options) ->
@thegoleffect
thegoleffect / snippet.js
Created January 13, 2012 11:05 — forked from christopherdebeer/snippet.js
Node.js Express - Mobile detection
app.get('/', function(req, res){
var ua = req.header('user-agent');
if(/mobile/i.test(ua)) {
res.render('mobile.html');
} else {
res.render('desktop.html');
}
});
@thegoleffect
thegoleffect / expressjs.islistening.js
Created January 11, 2012 11:48
[snippet][expressjs][nodejs]: Check if expressjs server is currently listening
var express = require("express");
var app = express.createServer();
app.listen(3000);
console.log(app.address()); // { port: 3000, family: n, address: '0.0.0.0' }
setTimeout((function(){
app.close()
console.log(app.address()); // null
}), 3000);