Skip to content

Instantly share code, notes, and snippets.

View DmitriyWebDev's full-sized avatar

Dmitriy Gavrilov DmitriyWebDev

View GitHub Profile
@mewset
mewset / playwright-arch-linux-fix.md
Created January 5, 2026 19:59
Playwright on Arch Linux - use system Chromium instead of bundled

Playwright on Arch Linux - just use system Chromium

So you're on Arch and Playwright is being a pain? Yeah, same. Here's what happens:

$ npm init playwright@latest
BEWARE: your OS is not officially supported by Playwright; installing dependencies for ubuntu24.04-x64 as a fallback.
Installing dependencies...
sh: line 1: apt-get: command not found
Failed to install browsers
const PasswordView = Backbone.View.extend({
events: {
'input input': 'updatePassword'
},
updatePassword(e) {
const pwd = e.target.value;
const reqs = [
['8+ characters', pwd.length >= 8],
['12+ characters', pwd.length >= 12],
@vezaynk
vezaynk / HOC.ts
Created February 1, 2023 23:35
HOC helpers. reduceHOCs and applyHOCs.
interface HOC<T> {
(Component: React.ComponentType<T>): (props: T) => JSX.Element
}
const reduceHOCs = <T>(...hocs: HOC<T>[]): HOC<T> => hocs
.reduce((reduced, next) => (c) => next(reduced(c)));
const applyHOCs = <T>(...hocs: HOC<T>[]) {
const reducedHoc = reduceHOCs(...hocs);
@isumix
isumix / secure-vscode-ru.md
Last active February 20, 2025 22:21
Безопасное окружение для разработчика

Недавно я задался вопросом безопасности своего дев. окружения - vscode nodejs git yarn npm... Как известно пакеты и их зависимости представляют обширный вектор для атак. Тоже самое можно сказать и про Visual Studio Code с его плагинами и средствами автоматизации, и про другие утилиты. По сути это все есть ящик пандоры с доступом к вашей системе.

Первое что пришло на ум, это создать под проект виртуальную машину и примонтировать каталог проекта в нее. Таким образом бы достигалась полная безопасность остальной системы. Но как показала практика это не очень удобно. Скорость работы оставляет желать лучшего, виртуальная машина потребляет много ресурсов, да и поддержка нескольких операционных систем занимает время.

В голове все это время крутилось: "контейнеры", поэтому решение не заставило себя долго ждать. В общем недавно у нас появилась возможность запускать сервер для vscode и подключаться к нему из своей локальной версии vscode используя remote расширение или вообще через броузер.

Я решил пойти

import React, { useReducer } from 'react';
import { BrowserHistory, Update, History } from 'history';
import { Router } from 'react-router-dom';
import {
Middleware, createSlice,
} from '@reduxjs/toolkit';
type ReduxAction<T = any> = {
type: string,
payload?: T,
@natterstefan
natterstefan / README.md
Created February 18, 2020 14:47
Jest | Mock useState

Jest - mock useState

When using import React, { useState } from 'react' in your components, this is how you can mock useState with jest.

@acutmore
acutmore / README.md
Last active December 23, 2025 02:44
Emulating a 4-Bit Virtual Machine in (TypeScript\JavaScript) (just Types no Script)

A compile-time 4-Bit Virtual Machine implemented in TypeScript's type system. Capable of running a sample 'FizzBuzz' program.

Syntax emits zero JavaScript.

type RESULT = VM<
  [
    ["push", N_1],         // 1
    ["push", False],       // 2
 ["peek", _], // 3

Принципы разработки Амплифера

Тут перечислены не законы, последние слово всегда за здравым смыслом. Тут перечислены лишь направление, куда надо стремиться. Принципы, которые должны помочь, когда не знаешь, что выбрать.

Ценности

  1. Пользователь. Если что-то сильно мешает UX или есть критическая ошибка, то в первую очередь мы спасаем пользователей. Для этого иногда надо взять ответственность на себя, переубедить толпу, написать плохой код.
@ai
ai / requirements.md
Last active December 30, 2024 23:34
Website requirements

Amplifr logo

Amplifr Landings Rules

Amplifr’s rules for landing pages created by outsource.

Requirements

@hackingbeauty
hackingbeauty / ModalFooter.js
Created May 20, 2018 19:18
ModalFooter component for a large-scale React application as taught in the course "How To Write A Single Page Application" - www.singlepageapplication.com
import React, { Component } from 'react'
import PropTypes from 'prop-types'
import { modalFooterStyles } from './styles.scss'
import { Modal as ReactBootstrapModal } from 'react-bootstrap'
class ModalFooter extends Component {
constructor(props) {
super(props)
}