Skip to content

Instantly share code, notes, and snippets.


Adonis Kakoulidis varemenos

View GitHub Profile
View .hyper.js
module.exports = {
config: {
// default font size in pixels for all tabs
fontSize: 12,
// font family with optional fallbacks
fontFamily: 'Menlo, "DejaVu Sans Mono", "Lucida Console", monospace',
// `BEAM` for |, `UNDERLINE` for _, `BLOCK` for █
cursorShape: 'BLOCK',
varemenos /
Last active Jun 25, 2017
Utilizing Array.prototype.reduce to replicate methods in Array's prototype


This is an exercise and a challenge to see how far can I go with reduce and how many built-in Array methods I can replicate with it.


  1. concat
  2. every
  3. filter
  4. findIndex
varemenos / 1.fetch2base64.js
Last active Mar 10, 2022
Get an asset via the Fetch API and convert it to a base64 string
View 1.fetch2base64.js
var path = '';
fetch(path).then(function (response) {
response.body.getReader().read().then(function(result) {
return btoa(String.fromCharCode.apply(null, result.value));
}).then(function(b64) {
varemenos / myfunc.js
Last active Apr 9, 2018
Sample Javascript module boilerplate
View myfunc.js
(function (root, name, factory) {
'use strict';
if (typeof define === 'function' && define.amd) {
} else if (typeof exports === 'object') {
module.exports = factory;
} else {
root[name] = factory();
varemenos /
Last active Jun 8, 2022
Git log in JSON format

Get Git log in JSON format

git log --pretty=format:'{%n  "commit": "%H",%n  "abbreviated_commit": "%h",%n  "tree": "%T",%n  "abbreviated_tree": "%t",%n  "parent": "%P",%n  "abbreviated_parent": "%p",%n  "refs": "%D",%n  "encoding": "%e",%n  "subject": "%s",%n  "sanitized_subject_line": "%f",%n  "body": "%b",%n  "commit_notes": "%N",%n  "verification_flag": "%G?",%n  "signer": "%GS",%n  "signer_key": "%GK",%n  "author": {%n    "name": "%aN",%n    "email": "%aE",%n    "date": "%aD"%n  },%n  "commiter": {%n    "name": "%cN",%n    "email": "%cE",%n    "date": "%cD"%n  }%n},'

The only information that aren't fetched are:

  • %B: raw body (unwrapped subject and body)
  • %GG: raw verification message from GPG for a signed commit
View atom.config
These are the configuration and package-syncing files I'm using for my setup of the Atom Editor

Keybase proof

I hereby claim:

  • I am varemenos on github.
  • I am adonisk ( on keybase.
  • I have a public key whose fingerprint is A79F C504 FB5A 2EC6 14DD B3D5 45A0 D777 A4D7 C545

To claim this, I am signing this object:

View logger.js
var spacing = (function (size) {
var result = '';
for (var i = 0; i < size; i++) {
result += '&nbsp;';
return result;
varemenos / ArrayMoveFunction.js
Created Apr 2, 2014
Function to move an Array item to another position of that Array
View ArrayMoveFunction.js
var t = [ 'a', 'b', 'c', 'd', 'e'];
Array.prototype.move = function (source, destination) {
// if source and destination are the same
if (source === destination) {
// then there is no need to move
// if the source is smaller than 0 or the destination is larger than the size of the array
if (source < 0 || source > this.length - 1 || destination > this.length - 1) {
View oh-my-zsh-functions.zsh
# creates a directory and cds into it
function mkd() {
mkdir -p "$@" && cd "$@"
# lists zombie processes
function zombie() {
ps aux | awk '{if ($8=="Z") { print $2 }}'