Skip to content

Instantly share code, notes, and snippets.

View CaptainYarb's full-sized avatar
🎮
Creating Multiplayer Servers

Jonathan Yarbor CaptainYarb

🎮
Creating Multiplayer Servers
View GitHub Profile
@CaptainYarb
CaptainYarb / links.json
Last active August 29, 2015 14:08
JSON Versioning
@CaptainYarb
CaptainYarb / r-auto-connect.js
Created February 6, 2015 03:18
RethinkDB Auto Connect: Express Middleware
module.exports = function(app){
app.express.use(function(req, res, next){
// initialise rethink connection
if(!app.rethinkdb){
return next();
}
app.rethinkdb.connect(function(err, r, conn, rethinkNext){
if(err){
return res.error('DB Error', err).end();
}
@CaptainYarb
CaptainYarb / app.js
Last active August 29, 2015 14:19
Secure Socket.io + Express
'use strict';
var io = require('socket.io'),
express = require('express'),
http = require('http'),
https = require('https'),
fs = require('fs'),
splitca = require('split-ca');
module.exports = function(){
@CaptainYarb
CaptainYarb / middleware.js
Created December 28, 2015 01:09
Express EJS Templates
var ejs = require('ejs'),
_ = require('lodash');
var util = require('util');
app.engine('ejs', ejs.renderFile);
app.set('view engine', 'ejs');
app.set('views', '/path/to/templates');
app.use(function(req, res, next){
@CaptainYarb
CaptainYarb / test1.js
Last active July 21, 2016 05:04
Setting Dates in Javascript - Test 1
new Date(dateString);
@CaptainYarb
CaptainYarb / the-test.js
Created July 21, 2016 05:02
Setting Dates in Javascript - The Test
var timestamp = '2000/01/01 00:00:00',
dates = [],
total = 1000,
i = 0,
pattern = new RegExp('([0-9]{4})-([0-9]{1,2})-([0-9]{1,2}) ([0-9]{1,2}):([0-9]{1,2})\.([0-9]{1,2})');
var makeNiceDate = function(date, len){ // make sure our date formats are "01-01-2000" rather than "1-1-2000"
len = len || 2;
return String("0"+date).slice(-len);
}
@CaptainYarb
CaptainYarb / test2.js
Created July 21, 2016 05:04
Setting Dates in Javascript - Test 2
var pattern = new RegExp('([0-9]{4})-([0-9]{1,2})-([0-9]{1,2}) ([0-9]{1,2}):([0-9]{1,2})\.([0-9]{1,2})');
var parts = dates[i].match(pattern);
new Date(parts[1], parts[2], parts[3], parts[4], parts[5], parts[6]);
@CaptainYarb
CaptainYarb / test3.js
Created July 21, 2016 05:06
Setting Dates in Javascript - Test 3
new Date(dates[i].slice(0, 4), dates[i].slice(5, 7), dates[i].slice(8, 10), dates[i].slice(11, 13), dates[i].slice(14, 16), dates[i].slice(17, 19));
@CaptainYarb
CaptainYarb / app.js
Last active September 26, 2017 22:36
Pull github repo in Node
var nodegit = require('nodegit');
var opts = {
fetchOpts: {
callbacks: {
credentials: function() {
return nodegit.Cred.sshKeyNew('git', './ssh/id_rsa.pub', './ssh/id_rsa', '');
},
certificateCheck: function() {
return 1;
@CaptainYarb
CaptainYarb / ringcaptcha-angular.js
Created May 8, 2018 16:45
Ringcaptcha Angular Directive
app.directive('verification', function($interval, $timeout){
return {
scope: {
submit: '='
},
restrict: 'E',
template: '<div id="verificationPhone"></div>',
link: function($scope){
let widget = null;
let setup = function(){