Skip to content

Instantly share code, notes, and snippets.

<h2>Buttons</h2>
<button class="white">white</button>
<button class="red">red</button>
<button class="pink">pink</button>
<button class="purple">purple</button>
<button class="deep-purple">deep-purple</button>
<button class="indigo">indigo</button>
<button class="blue">blue</button>
<button class="light-blue">light-blue</button>
<button class="cyan">cyan</button>
@alexanderGugel
alexanderGugel / .gitconfig
Created December 2, 2014 19:11
My .gitconfig
[user]
name = Alexander Gugel
email = alexander.gugel@gmail.com
[alias]
lazy = !git add -A && git commit -m 'Too lazy for a commit message'
yolo = push origin master --force
back = revert HEAD
pom = !git pull origin master && git push origin master
shit = reset --hard HEAD
@alexanderGugel
alexanderGugel / .slate.js
Created November 29, 2014 20:51
My slate configuration (stolen from someone else)
slate.configAll({
'defaultToCurrentScreen': true,
'checkDefaultsOnLoad': true
});
var layout = {
maximize: S.op('move', {
'x' : 'screenOriginX',
'y' : 'screenOriginY',
'width' : 'screenSizeX',
@alexanderGugel
alexanderGugel / gist:c77c65ac881da9e82f41
Created November 12, 2014 00:15
JS: Return all matches instead of only the first one when executing a regular expression on a string
var execMultiple = function (regex, str) {
var match = regex.exec(str);
var matches = [];
while (match != null) {
matches.push(match);
match = regex.exec(str);
}
return matches;
};
@alexanderGugel
alexanderGugel / gist:f3e8e82b606dac9624b4
Created November 10, 2014 22:07
Node.JS Redis in production
// Port, host and auth token of Redis server might be defined as environment
// variables. If not, fall back to defaults.
var redisPort = process.env.REDIS_PORT || 6379,
redisHost = process.env.REDIS_HOST || '127.0.0.1',
redisAuth = process.env.REDIS_AUTH || null,
redis = require('redis');
// Since we are waiting for the error event, we don't have to check for errors
// individually after each Redis command.
var onError = function (error) {
@alexanderGugel
alexanderGugel / gist:aceb9d83c3769d113853
Created November 6, 2014 18:13
Recursively extract keys from nested object
var object = {
hello: 'world',
hallo: {
german: 'welt',
test: {
test: true,
test: false
}
}
};
@alexanderGugel
alexanderGugel / gist:d473ccc6270eba16cdcf
Created November 5, 2014 16:20
Node.JS email to gravatar
var crypto = require('crypto');
var getGravatarImage = function (email) {
return ('//www.gravatar.com/avatar/' + md5(email)).trim();
};
var md5 = function (str) {
var hash = crypto.createHash('md5');
hash.update(str.toLowerCase().trim());
return hash.digest('hex');
var fs = require('fs');
var words = fs.readFileSync('/usr/share/dict/words', {
encoding: 'utf8'
}).split('\n');
var tlds = ['co', 'com', 'io', 'de', 'it'];
var results = [];
@alexanderGugel
alexanderGugel / linkedList.js
Last active August 29, 2015 14:04
Linked List without a single if-statement? - Challenge accepted!
// PoC: Implemented methods: addToTail(value), removeHead() #=> value, contains(value) #=> boolean
var tail = {
next: this,
removeHead: function () {
return null;
},
contains: function (value) {
return false;
},
@alexanderGugel
alexanderGugel / crawl.js
Created July 19, 2014 21:22
BitTorrent DHT Crawler; No Redis DB required
var bencode = require('bencode'),
dgram = require('dgram'),
hat = require('hat'),
_ = require('lodash');
// Put in a function. The returned function won't ever throw an error. This is
// quite useful for malformed messages.
var makeSafe = function (fn, onFuckedUp) {
return function () {
try {