Skip to content

Instantly share code, notes, and snippets.

View just-boris's full-sized avatar
💭
I may be slow to respond.

Boris Serdiuk just-boris

💭
I may be slow to respond.
View GitHub Profile

React Everywhere — Rick Hanlon

Building a Community Around Ignite — Jamon Holmgren

Toolchain for building modular React Native plugins — Ville Immonen

No notes :(

Custom CSS is the path to inconsistent UI — Artem Sapegin

MobX - The Journey — Michel Weststrate

MobX [mob-ex] – reactive updates via subscriptions.

How to run an open-source library

  • people do not inspect your source code seriously
  • people are not inspired by your ideas and solutions as you are
  • project without a critical mass of users does not look very attractive
@just-boris
just-boris / .gitignore
Last active January 22, 2019 08:55
React scoped styling options
.cache
dist
node_modules
@just-boris
just-boris / .gitignore
Last active August 8, 2020 11:24
Shadow DOM as a React component: https://dist-bpvbyiobiw.now.sh
.cache
dist
node_modules
@just-boris
just-boris / allure.js
Created April 18, 2017 14:10
Allure grunt plugin
module.exports = grunt => {
const allure = require('allure-commandline');
grunt.registerMultiTask('allure', 'Passes commands to allure-commandline', function() {
const done = this.async();
const options = this.options();
const args = [];
if(this.target === 'generate') {
args.push('generate');
if(options.clean) {
@just-boris
just-boris / index.js
Created February 5, 2017 18:14
Testcase for fast-memoize and webpack
import memoize from 'fast-memoize';
function sum(a, b) {
return a + b;
}
const memoSum = memoize(sum);
console.log(sum(1, 2));
@just-boris
just-boris / index.js
Created January 16, 2017 08:17
Array for-loop and Array.forEach
'use strict';
var Benchmark = require('benchmark');
var suite = new Benchmark.Suite;
var forLoop = {
setup: () => {
var arr = [];
for (var i = 0; i < 1000; i++) {
arr[i] = i;
function Dropdown({title, value, options, optionKey, optionVal, onChange}) {
if(values === undefined && values === null) {
return <div>No data</div>;
}
return <div>
<label>{title}:</label>
<select value={value || -1} onChange={onChange}>
<option key={-1} value={-1}>All</option>
{values.map(function (val, idx) {
return <option key={idx} value={val[optionKey]}>{val[optionVal]}</option>
beforeEach(function() {
global.localStorage = createLocalStorageMock();
this.server = new AxiosMock(axious);
this.store = createStore();
});
afterEach(function() {
this.server.restore();
delete global.localStorage;
});
@just-boris
just-boris / index.js
Created July 7, 2016 10:04
configure express routes through decorators
function factory(app) {
return ({url, method = 'get'}) => (target, key, descriptor) => {
app[method](url, target[key]);
}
}
const Path = factory(app);
class Controller {