Skip to content

Instantly share code, notes, and snippets.

View deptno's full-sized avatar
:octocat:
midnight coding

Bonggyun Lee deptno

:octocat:
midnight coding
View GitHub Profile
@deptno
deptno / circleci-awscli-ecr.yml
Last active February 14, 2018 15:01
circleci awscli ecr
version: 2
jobs:
build:
branches:
only:
- master
docker:
- image: circleci/node:8-stretch
working_directory: ~/repo
@deptno
deptno / currency-emoji-to-slack.yaml
Created February 8, 2018 06:28
add crypto currency imoji to slack yam
title: crypto-currency-icons
emojis:
- name: act
src: https://github.com/cjdowner/cryptocurrency-icons/raw/master/32@2x/icon/act@2x.png
- name: ada
src: https://github.com/cjdowner/cryptocurrency-icons/raw/master/32@2x/icon/ada@2x.png
- name: adx
src: https://github.com/cjdowner/cryptocurrency-icons/raw/master/32@2x/icon/adx@2x.png
- name: ae
src: https://github.com/cjdowner/cryptocurrency-icons/raw/master/32@2x/icon/ae@2x.png
@deptno
deptno / nodemon.json
Created February 14, 2018 17:14
golang for nodemon.json
{
"verbose": false,
"ignore": [
"*.test.go"
],
"execMap": {
"go": "go run"
}
}
@deptno
deptno / strong-typed-redux-action.ts
Last active April 22, 2020 17:46
strong typed redux action with typescript@2.8
function createAction<A extends ActionTypes>(type: A): TypedAction<A>
function createAction<A extends ActionTypes, P>(type: A, payload: P): TypePayloadAction<A, P>
function createAction(type, payload?) {
return payload !== undefined ? {type, payload} : {type}
}
enum ActionTypes {
ACTION_1 = 'action 1',
ACTION_2 = 'action 2'
}
@deptno
deptno / strong-typed-redux-thunk-action.ts
Last active June 22, 2018 17:00
strong typed redux thunk action with typescript@2.8
import {ThunkAction} from 'redux-thunk'
export const thunks: ThunkActionCreators = {
thunkA: () => {
return (dispatch, getState, extraArgs) => {
setTimeout(function useTimeoutBecauseImThunk() {
dispatch(actions.actionA())
}, 1000)
}
},
@deptno
deptno / jq-cheatsheet.md
Last active April 2, 2018 11:46
cheatsheet: jq vs javascript comparison

collection

find

{
  "data": {
    "people": [
      {
 "name": "deptno"
@deptno
deptno / cwlog-oneline.js
Last active May 25, 2018 08:22
aws-cwlog cloudwatch log transform oneline format
// aws-cwlog trnasform script <https://www.npmjs.com/package/aws-cwlog>
// CloudWatch Log to oneline format eg."2018-05-25T04:41:58 log message"
map(
pipe(
dissoc('ingestionTime'),
over(
lensProp('timestamp'),
pipe(
x => new Date(x).toISOString(),
slice(0, -5),
@deptno
deptno / throttle-vs-debounce.js
Created June 9, 2018 20:14
throttle-does-not-guarantee-latest-call
import {throttle, debounce} from 'lodash'
const delay = () => new Promise(r => setTimeout(r, 100))
describe('throttle vs debouce', () => {
beforeEach(() => {
console.log = jest.fn()
})
it('throttle does not guarantee about execute latest call', async (done) => {
const i = throttle(x => console.log(x), 300)
let count = 0
@deptno
deptno / fragment.ts
Created June 25, 2018 02:53
graphql-tag fragment example
import gql from 'graphql-tag'
const FRAGMENT_REPOSITORY = gql`
fragment repository on Repository {
name
url
createdAt
description
descriptionHTML
labels {
class A {
state = {
x: 0,
y: 1
}
constructor(initialState?: A) {
if (initialState) {
this.state = initialState
}