Skip to content

Instantly share code, notes, and snippets.

View ajschlosser's full-sized avatar

Aaron John Schlosser ajschlosser

  • California
View GitHub Profile
Vagrant.configure("2") do |config|
config.vm.box = "ubuntu/bionic64"
config.vm.network "forwarded_port", guest: 80, host: 8080
config.vm.network "forwarded_port", guest: 443, host: 443
config.vm.network "forwarded_port", guest: 2222, host: 2222
config.vm.network "forwarded_port", guest: 4567, host: 4567
config.vm.synced_folder "./conf", "/etc/gitlab"
config.vm.synced_folder "./docker", "/home/vagrant/docker"
@ajschlosser
ajschlosser / .travis.yml
Created November 9, 2015 16:52
Travis CI .travis.yml file for Node.js 4.x, NATS, RethinkDB, and Redis server
language: node_js
node_js:
- "4.2.1"
sudo: required
dist: trusty
before_install:
- mkdir -p gnatsd
- "wget https://github.com/nats-io/gnatsd/releases/download/v0.6.4/gnatsd-v0.6.4-linux-amd64.tar.gz -qO - | tar -zxvC gnatsd/"
- export PATH=$PATH:$PWD/gnatsd/
- gnatsd&
@ajschlosser
ajschlosser / states
Created July 16, 2015 20:22
U.S. states, U.S. state capitals, and the ZIP codes for U.S. state capitals in JSON format
{
"states" = [
{
"abbreviation": "AL",
"capital": "Montgomery",
"zip": 36101
},
{
"abbreviation": "AK",
"capital": "Juneau",
@ajschlosser
ajschlosser / encapsulate.js
Created June 14, 2015 23:51
Object encapsulation
return {
encapsulate: function(o) {
function process(prop, key) {
var primary = prop[key];
if (!Array.isArray(prop[key])) {
for (var i in primary) {
if (primary[i] !== null && typeof primary[i] === 'object') {
process(primary, i);
} else if (typeof primary[i] !== 'function') {
var secondary = primary[i];
@ajschlosser
ajschlosser / addressGenerator
Created February 23, 2015 17:38
Generates a random, generic, US-style address.
function generateAddress (obj) {
var odds = Math.floor(Math.random() * 999) + 1,
multiplier = '',
streetLength = Math.floor(Math.random() * 5 + 1),
streetNumber = '',
apartmentTypes = ['Unit', 'Apt.', 'Suite'],
apartmentLetters = ['A','B','C','D','E','F','G'],
apartmentLetter = '',
apartmentType = '',
apartmentNumber = '',
/**
* Checks to see if a given string ends with a particular file extension
* @param {string} f String representing a possible file name with extension
* @param {string} e The sought extension
* @returns {boolean}
*/
function hasExtension (f, e) {
if (e[0] !== '.') {
e = '.' + e;
}
@ajschlosser
ajschlosser / Vagrantfile
Last active August 29, 2015 14:11
Basic Vagrantfile
# -*- mode: ruby -*-
# vi: set ft=ruby :
# Vagrantfile API/syntax version. Don't touch unless you know what you're doing!
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
# All Vagrant configuration is done here. The most common configuration
# options are documented and commented below. For a complete reference,
# please see the online documentation at vagrantup.com.
@ajschlosser
ajschlosser / divSlider.js
Created September 17, 2014 22:03
A quick fix for fading slides. Will cycle through <div> elements with the class "ds-slide" and apply the class "ds-faded" to them at predefined intervals. The "ds-faded" class can then by styled with transitions of your choice.
// Slides
var divSlider = function () {
var ds = this;
var transitionClass = "ds-faded";
ds.n = 0;
ds.pause = function () { clearInterval(ds._intervalId); }
ds.toggle = function () {
console.log(ds.n, ds.slides.length-1);
ds.n < ds.slides.length-1 ? ds.n++ : ds.n = 0;
var prev = ds.n;
@ajschlosser
ajschlosser / compass.js
Created September 10, 2014 21:42
A fix for using Gulp with Compass. This will prevent gulp-compass from rendering identical sprites/images every time it runs. Replaces compass.js.
'use strict';
var PLUGIN_NAME = 'gulp-compass',
spawn = require('child_process').spawn,
gutil = require('gulp-util'),
path = require('path'),
which = require('which').sync,
defaults = {
style: false,
comments: true,
@ajschlosser
ajschlosser / gulpfile-basic-webdev
Last active August 29, 2015 14:06
A very basic gulpfile.js for web development (with Jade and PHP support).
/*
* Base Gulp.js workflow
* for simple front-end projects
* author: Aaron John Schlosser
* url: http://www.aaronschlosser.com
*/
var gulp = require("gulp"),
gutil = require("gulp-util"),
concat = require("gulp-concat"),