Skip to content

Instantly share code, notes, and snippets.

@simenbrekken
simenbrekken / interceptor.js
Created November 20, 2012 08:45
Minimal caching pushState link interceptor
history.pushState && !function() {
var location = history.location || window.location;
var cache = (function() {
var store = {}
return function(key, data) {
if (arguments.length == 2) {
(store[key] = data)
@simenbrekken
simenbrekken / override.styl
Created November 30, 2012 08:09
Override display declaration
// support-for-ie is provided as a compile-time variable, in case you don't want/need IE support
display(type)
display: type
if type is 'inline-block' and support-for-ie
zoom: 1
*display: inline
// Nib also provides this gem:
@simenbrekken
simenbrekken / .gitconfig
Created December 9, 2012 17:16
Git config
[core]
autocrlf = input
editor = subl -w
excludesfile = /Users/Simen/.gitignore
[user]
name = Simen Brekken
email = simen@unfold.no
[alias]
zip = !git archive --format zip -9 -v --prefix $(basename \"$(pwd)\")/ --output $(basename \"$(pwd)\")-$(git log|head -n 1|cut -c 8-18).zip
co = checkout
@simenbrekken
simenbrekken / dabblet.css
Created February 4, 2013 09:37
The first commented line is your dabblet’s title
/**
* The first commented line is your dabblet’s title
*/
background: #f06;
background: linear-gradient(45deg, #f06, yellow);
min-height: 100%;
@simenbrekken
simenbrekken / firebase-server-auth.js
Created February 22, 2013 07:59
Server-side Firebase authentication
var Firebase = require('../vendor/firebase-node'),
FirebaseTokenGenerator = require('../vendor/firebase-token-generator-node.js')
var db = new Firebase('https://derp.firebaseio.com',)
var generator = new FirebaseTokenGenerator('firebase secret')
var token = generator.createToken({debug: process.env.NODE_ENV != 'production'})
db.auth(token, function(success) {
if (success) {
console.log('We are in!')
@simenbrekken
simenbrekken / firebase-auth-deferred.js
Created March 13, 2013 12:47
Easier Firebase authentication with jQuery Deferred
var db = new Firebase('https://demo.firebaseio.com')
var authenticate = (function(db) {
var loggedIn,
deferred = $.Deferred()
var client = new FirebaseAuthClient(db, function(err, user) {
loggedIn = !!user
if (err) {
@simenbrekken
simenbrekken / README.md
Last active January 7, 2017 13:44
Firebase NPM doesn't expose the token generator dependency

There are some ways to fix this:

  1. Remove dependency and let users install it manually as needed, the token generator isn't really a hard dependency of Firebase anyway
  2. Expose the dependency from the firebase module:
    var Firebase = require('firebase')
        FirebaseTokenGenerator = Firebase.TokenGenerator
@simenbrekken
simenbrekken / server.js
Created April 5, 2013 12:03
CORS Header Test
var http = require('http')
var challenge = 'Basic ' + (new Buffer('test:test').toString('base64'))
http.createServer(function(req, res) {
var headers = {
'Access-Control-Allow-Origin': req.headers.origin,
'Access-Control-Allow-Credentials': true,
'Access-Control-Allow-Headers': 'authentication',
'Access-Control-Max-Age': 60 * 25 * 30,
@simenbrekken
simenbrekken / facebook.js
Created April 8, 2013 04:17
Facebook signed request middleware
var crypto = require('crypto')
module.exports = function(secret) {
return function(req, res, next) {
var signedRequest = req.body.signed_request
if (signedRequest) {
var parts = signedRequest.split('.', 2)
var signature = parts[0]
var payload = parts[1]
@simenbrekken
simenbrekken / dabblet.css
Created April 15, 2013 19:22
The first commented line is your dabblet’s title
/**
* The first commented line is your dabblet’s title
*/
background: #f06;
background: linear-gradient(45deg, #f06, yellow);
min-height: 100%;