Skip to content

Instantly share code, notes, and snippets.

View NikolaRusakov's full-sized avatar
🌏
Working from Anywhere

Nikola Rusakov NikolaRusakov

🌏
Working from Anywhere
  • Doto Solutions
  • Queensland, Australia
View GitHub Profile
@NikolaRusakov
NikolaRusakov / machine.js
Last active November 29, 2019 22:52
Generated by XState Viz: https://xstate.js.org/viz
// Available variables:
// - Machine
// - interpret
// - assign
// - send
// - sendParent
// - spawn
// - raise
// - actions
@NikolaRusakov
NikolaRusakov / create_branch.py
Last active March 15, 2020 00:11
quick and dirty Python util to convert github issue title into branch name
import argparse
from configparser import ConfigParser
import re
parser = argparse.ArgumentParser(description='Transform issue name branch name.')
parser.add_argument('name', metavar='S', default=None,
help='branch name')
# parser.add_argument('--sum', dest='accumulate', action='store_const',
# const=sum, default=max,
# help='sum the integers (default: find the max)')

Bug Report

Ionic version:

@NikolaRusakov
NikolaRusakov / lame-scrape.js
Last active March 12, 2020 15:50
Scrape of LinkedIn profile, the manual way
const cheerio = require('cheerio')
// TODO: feed me with selected dom element with class of .profile-detail
const detailsCs = { data: ''}
const ce = cheerio.load(detailsCs.data, {
withDomLvl1: true,
normalizeWhitespace: true,
decodeEntities: true
});
@NikolaRusakov
NikolaRusakov / strapi.yml
Created March 15, 2020 00:54 — forked from psaia/strapi.yml
Quick, immutable (with persistent mongodb), Strapi kubernetes config
apiVersion: v1
data:
database.json: |
{
"defaultConnection": "default",
"connections": {
"default": {
"connector": "mongoose",
"settings": {
"uri": "mongodb://..."
@NikolaRusakov
NikolaRusakov / copy-tabs.js
Last active September 27, 2021 17:49
copy mobile tabs
tabs = document.querySelectorAll('.subrow-box .url')
str = '';
for (i=0;i<tabs.length;i++){
console.log(tabs[i].innerHTML)
if (tabs[i].innerHTML != null){
str += tabs[i].innerHTML+'\n'
}
}
copy(str)
/** @jsx jsx */
import { jsx } from '@emotion/core';
import React, { useEffect, useState, useRef, Ref } from 'react';
import { useSelector, useDispatch } from 'react-redux';
// import { AutoSizer, List, InfiniteLoader } from 'react-virtualized';
import AutoSizer from 'react-virtualized-auto-sizer';
import InfiniteLoader from 'react-window-infinite-loader';
import { FixedSizeList } from 'react-window';
import SearchSection from '../../src/components/searchSection';
interface Mappable<T> {
map: <R>(fn: (x: T) => R) => Mappable<R>;
valueOf: () => T;
}
const identity = <T>(value: T): Mappable<T> => ({
map: <R>(fn: (x: T) => R): Mappable<R> => identity(fn(value)),
valueOf: () => value,
});
@NikolaRusakov
NikolaRusakov / scrcpy-install.md
Last active August 7, 2020 15:57
install scrcpy on arch
export ANDROID_SDK_ROOT=/home/$USER/Android/Sdk

tar -xvzf jdk-8u261-linux-i586.tar.gz
sudo cp -r jdk1.8.0_261 /usr/lib/jvm
archlinux-java status
@NikolaRusakov
NikolaRusakov / gist:2a244939a0d52f0bcfb3e00a0f2de232
Created August 16, 2020 19:59
flutter BLoC - pointer config design pattern
Widget -> navigation with argument -> bloc argument -> bloc of blocs action -> [bloc A] / config params -> bloc slice based on argument =>
navigated screen with bloc slice config from navigation arg