Skip to content

Instantly share code, notes, and snippets.

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

Nick Kugaevsky kugaevsky

🏠
Working from home
View GitHub Profile
@kugaevsky
kugaevsky / .zshrc
Last active December 23, 2015 05:29
oh-my-zsh config
# Path to your oh-my-zsh configuration.
ZSH=$HOME/.oh-my-zsh
# Set name of the theme to load.
# Look in ~/.oh-my-zsh/themes/
# Optionally, if you set this to "random", it'll load a random theme each
# time that oh-my-zsh is loaded.
ZSH_THEME="robbyrussell"
# Example aliases
@kugaevsky
kugaevsky / play.js.coffee
Last active December 24, 2015 15:59
Play sound proof-of-concept
# --------------------
# Define Audio Context
# --------------------
window.AudioContext = window.AudioContext||window.webkitAudioContext
window.MyAudioContext = new AudioContext()
window.MyAudioDecodeAndPlay = (arrayBuffer) ->
MyAudioContext.decodeAudioData arrayBuffer, (buffer) ->
source = MyAudioContext.createBufferSource()
@kugaevsky
kugaevsky / taxpayer_id.rb
Last active December 31, 2015 19:19
Russian taxpayer id validator
class TaxpayerID
FACTORS = [ 3, 7, 2, 4, 10, 3, 5, 9, 4, 6, 8, 0 ]
def initialize value
@digits = value.to_s.chars.map(&:to_i)
raise ArgumentError, 'unexpected argument length (must be 10 or 12 chars)' unless @digits.length == 10 || @digits.length == 12
@result = (@digits.length == 10 ? check_ten : check_twelve)
end
@kugaevsky
kugaevsky / datetime.ru.yml
Created September 3, 2014 14:17
Datetime Russian i18n for Ruby on Rails
ru:
date:
formats:
# Форматы указываются в виде, поддерживаемом strftime.
# По умолчанию используется default.
# Можно добавлять собственные форматы
#
#
# Use the strftime parameters for formats.
# When no format has been given, it uses default.
@kugaevsky
kugaevsky / gulpfile.coffee
Last active August 29, 2015 14:08
Assets pipeline via Gulp
# ------------
# Task runners
# ------------
# Gulp builder
gulp = require 'gulp'
# Run tasks one by one
runSeq = require 'run-sequence'
@kugaevsky
kugaevsky / revert.sh
Last active July 4, 2018 09:06
Reverting back to node 0.10.36 on Mac OS X with Homebrew
$ cd /usr/local
$ git checkout b64d9b9c431642a7dd8d85c8de5a530f2c79d924 Library/Formula/node.rb
$ brew unlink node
$ brew install node
$ npm install -g npm@latest
@kugaevsky
kugaevsky / urlable.rb
Created May 20, 2015 12:41
Concern with URL validator
require 'active_support/concern'
require 'addressable/uri'
require 'simpleidn'
require 'faraday'
# Normalize and validate URLs
module Urlable
extend ActiveSupport::Concern
included do
@kugaevsky
kugaevsky / sidekiq-upstart.conf.erb
Last active August 29, 2015 14:22
Capistrano templates for Unicorn and Sidekiq upstart scripts
#!upstart
description "Upstart Script for a Freefeed sidekiq process"
start on startup
stop on shutdown
respawn
setuid deploy
setgid deploy
@kugaevsky
kugaevsky / application.coffee
Last active January 26, 2016 13:51
Access to XHR object in angular $http service
class AppConfig
@$inject: []
constructor: () ->
# Dirty XHR hack
XMLHttpRequest::setRequestHeader = ((sup) ->
(header, value) ->
if header is '__XHR__' and angular.isFunction(value)
value @
else
sup.apply @, arguments
@kugaevsky
kugaevsky / semantic_breadcrumbs_builder.rb
Created February 7, 2017 19:26
Breadcrumbs on Rails Builder for Semantic UI
class SemanticBreadcrumbsBuilder < BreadcrumbsOnRails::Breadcrumbs::Builder
def render
@elements[-1].options[:last] = true
@elements.collect do |element|
render_element(element)
end.join(@options[:separator] || separator)
end
def render_element(element)
element.options[:class] ||= 'section'