Skip to content

Instantly share code, notes, and snippets.

View zeropaper's full-sized avatar
💅
I may be slow to respond.

Valentin Vago zeropaper

💅
I may be slow to respond.
View GitHub Profile
@zeropaper
zeropaper / index.html
Last active January 12, 2017 16:10
Visual Fiha canvas layer boilerplate
<canvas id="canvas" width="400" height="300"></canvas>
{
"layers": [
{
"active": true,
"mixBlendMode": "normal",
"name": "no-signal",
"opacity": 100,
"rotateX": 0,
"rotateY": 0,
"rotateZ": 0,
{
"layers": [
{
"name": "canvas",
"type": "canvas",
"canvasLayers": [
{
"props": {
"active": {
"type": "boolean",
function sharedStart(array) {
var A= array.concat().sort(),
a1= A[0], a2= A[A.length-1], L= a1.length, i= 0;
while(i<L && a1.charAt(i)=== a2.charAt(i)) i++;
return a1.substring(0, i);
}
@zeropaper
zeropaper / sparkline.js
Created August 9, 2016 06:37
A very tiny sparkline chart
/**
* var sparkline = new Sparkline([10,20,45,12], 120, 30, '#000', 'red');
* document.body.appendChild(sprakline.render().canvas);
*/
function Sparkline(data, width, height, lineColor, dotColor) {
this.canvas = document.createElement('canvas');
this.canvas.width = width;
this.canvas.height = height;
this.lineColor = lineColor;
@zeropaper
zeropaper / paginator.js
Created August 14, 2013 12:42
Quickly improved paginator (for Backbone PageableCollection). The active page stays the one in the middle of the pages list. The relevant part is the "makeHandles" method
/*jslint indent: 2*/
/*global define*/
'use strict';
define([
'backbone',
'underscore',
'backgrid-paginator'
], function(Backbone, _){
var ISIE = $('html').hasClass('lt-ie9');
@zeropaper
zeropaper / console.js
Created July 23, 2013 10:06
Ensure a console object with the following methods: - info - log - error - debug - trace - group - groupEnd - warn
var console = {};
var methods = 'info log error debug trace group groupEnd warn'.split(' ');
for (var m in methods) {
if (typeof console[methods[m]] !== 'function') {
console[methods[m]] = function(){};
}
}
window.console = console;
@zeropaper
zeropaper / gist:5775266
Last active December 18, 2015 11:20
just a little utility to test some webservice
var http = require('http');
var host = 'test.domain.com';
var apiUrl = 'http://'+ host +'/api/v1';
var URI = require('URIjs');
var async = require('async');
var _ = require('underscore');
var cookies = {};
@zeropaper
zeropaper / sync.js
Created June 4, 2013 06:08
Very very simple "sync" for Backbone & Redis
/*jslint indent: 2, node: true*/
'use strict';
var _ = require('underscore');
var redis = require('redis');
module.exports = function(options) {
options = _.clone(options || {});
_.defaults(options, {
port: 6379,
host: '127.0.0.1',
options: {},
@zeropaper
zeropaper / small-dialog-example.js
Created December 2, 2011 13:58
A tiny piece of JS to handle dialogs
(function($){
var C = typeof console == 'object' ? console : {info: function(){}, log: function(){}, error: function(){}};
var searchSettings = {
id: 'search-dialog',
el: $('#top-menu .search')[0],
keepClosed: true,
type: 'search',
content: $('#js-page-search-form').html(),
outerWidth: $tm.outerWidth(),