Skip to content

Instantly share code, notes, and snippets.

View kn0ll's full-sized avatar
🏠
Working from home

Nic Luciano kn0ll

🏠
Working from home
View GitHub Profile
@kn0ll
kn0ll / config.ru
Created October 30, 2010 04:46
google image search proxy for hi-res movie posters
require 'movies'
run Sinatra::Application
@kn0ll
kn0ll / grabby.rb
Created October 30, 2010 04:47
small ruby server to show a random tinygrab image
require 'sinatra'
require 'open-uri'
get '/' do
tryImg
end
def tryImg
rand = ''
@kn0ll
kn0ll / bookmarklet.js
Created June 11, 2011 04:31
advanced bookmarklet template
javascript:(function() {
if(!window.your_bookmarklet) {
var doc = document,
js = doc.createElement('script');
js.type = 'text/javascript';
js.src = 'loader.js';
js.async = true;
@kn0ll
kn0ll / clutch.php
Last active October 3, 2022 13:08
an asynchronous http library for php.
<?php
namespace clutch;
class Request {
/**
* The url of the request
* @var string
*/
public $url;
@kn0ll
kn0ll / satellite.php
Last active September 26, 2015 07:48
connect-style middleware handling in php.
<?php
namespace satellite;
class Request {
public $method;
public $url;
public $headers;
@kn0ll
kn0ll / proxy.coffee
Last active November 19, 2018 10:12
a simple nodejs request proxy as connect middleware. developed as a cross domain ajax proxy.
###
a small connect middleware proxy for cross domain ajax
@path first match group will be forwarded
@host the host you want to proxy
connect_server.use proxy '^(/.+)', 'api.twitter.com'
connect_server.use proxy '^/gh(/.+)', 'api.github.com'
###
@kn0ll
kn0ll / middleware.coffee
Last active October 5, 2015 17:58
dead simple connect-style middleware routing.
http = require('http')
server = http.createServer()
server.middleware = []
server.use = (middleware) ->
@middleware.push middleware
server.on 'request', (req, res) ->
@kn0ll
kn0ll / waveform.js
Last active October 9, 2015 05:28
a backbone view for creating a waveform png from an audio buffer.
var BufferDrawer = Backbone.View.extend({
initialize: function(options) {
this.buffer = options.buffer;
return Backbone.Model.prototype.initialize.apply(this, arguments);
},
draw: function() {
var channels = this.buffer.channels,
@kn0ll
kn0ll / graph.js
Last active October 10, 2015 04:57
a directed tick-based "streaming" graph. used for an audio processing graph, for example.
// this is a directed graph data structure- with the unique property that it is
// intended to handle the flow of data upstream in a clock based system.
// streaming audio through a graph of nodes with variable inputs and outputs, for instance.
// an `Edge` behaves as a relation between two nodes.
// the edge is saved on both connected nodes for reference.
var Edge = function(fromNode, fromIndex, toNode, toIndex) {
this.fromNode = fromNode;
this.fromIndex = fromIndex;
this.toNode = toNode;
@kn0ll
kn0ll / extend.js
Created September 15, 2012 09:24
backbone's class inheritance isolated to a single function.
var extend = (function() {
var breaker = {};
var has = function(obj, key) {
return hasOwnProperty.call(obj, key);
};
var each = function(obj, iterator, context) {
if (obj == null) return;