Skip to content

Instantly share code, notes, and snippets.

View egorguscha's full-sized avatar
🏠
Working from home

Egor egorguscha

🏠
Working from home
View GitHub Profile

+++ title = "Application structure" description = "Where to look for files and where to put new" date = 2019-08-20 rss = true +++

I split my source code on features/, ui/ and pages/.
Logic can be only in the pages/ and features/.

/*
types:
simple - 2 persons
complex - 2 > persons
*/
const main = {
messages: {
title: 'Messages',
@egorguscha
egorguscha / file1.txt
Created July 10, 2019 14:50
updated gist via ajax
updated String file contents via ajax
@egorguscha
egorguscha / file1.txt
Created July 10, 2019 14:50
updated gist via ajax
updated String file contents via ajax
// @jsx el
// @jsxFrag 'Fragment'
import * as React from 'react'
import {catalogs} from './effects/fetch-data'
import {createStore, createEvent, createEffect, createApi} from 'effector'
import {useStore} from 'effector-react'
const root = document.getElementById('root')
function el(tag, props, ...children) {
@egorguscha
egorguscha / nbformat.json
Last active August 25, 2019 09:17
changes done!
{
"metadata": {
"kernel_info": {
"name": "effector-editor"
},
"language_info": {
"name": "ECMAScript",
"version": "6",
"mimetype": "application/javascript",
// example 1
const p1 = new Promise(resolve => setTimeout(resolve, 300, 'first promise'))
const p2 = new Promise(resolve => setTimeout(resolve, 200, 'second promise'))
const p3 = new Promise(resolve => setTimeout(resolve, 700, 'third promise'))
const p4 = new Promise(resolve => setTimeout(resolve, 500, 'fourth promise'))
const p5 = new Promise(resolve => setTimeout(resolve, 900, 'fifth promise'))
function concurrentCall(arrQueries, limit) {
const sortRes = []
// index.js
const render = () =>
ReactDOM.render(
<Provider store={store}>
<ConnectedRouter history={history}>
<App />
</ConnectedRouter>
</Provider>,
root
)
const p1 = new Promise(resolve => setTimeout(resolve, 300, 'first promise'))
const p2 = new Promise(resolve => setTimeout(resolve, 200, 'second promise'))
const p3 = new Promise(resolve => setTimeout(resolve, 700, 'third promise'))
const p4 = new Promise(resolve => setTimeout(resolve, 500, 'fourth promise'))
const p5 = new Promise(resolve => setTimeout(resolve, 900, 'fifth promise'))
function concurrentCall(arrQueries, count) {
const sortRes = []
return new Promise(resolve => {
var weatherForecast = {
id: '',
country: '',
temperature: ''
}
var xhr = new XMLHttpRequest();
function query(url) {
xhr.open('GET', url);