Skip to content

Instantly share code, notes, and snippets.

View deepsweet's full-sized avatar

Kir Belevich deepsweet

View GitHub Profile
@WebReflection
WebReflection / esm-in-nodejs.md
Last active October 20, 2021 14:54
Solving the "ESM in NodeJS" Odyssey.

Solving the "ESM in NodeJS" Odyssey.

After months of discussions in a dedicated group, it's clear to me NodeJS is still stuck in finding a way to deliver native ESM to its users.

The "usual few" won't hear anything different from .mjs, but .mjs has been demonstrated to be not a solution neither.

Following few cases not covered by .mjs:

  • evaluation of any string, via CLI, or on demand, where there is no extension
  • tools that convert their syntax into JS, since it always worked to date (thanks to transpilers, bundlers, and loaders)
@davidgilbertson
davidgilbertson / http2.js
Last active February 22, 2025 22:22
HTTP2 server with compression and caching
const http2 = require('http2');
const fs = require('fs');
const path = require('path');
const zlib = require('zlib');
const brotli = require('brotli'); // npm package
const PORT = 3032;
const BROTLI_QUALITY = 11; // slow, but we're caching so who cares
const STATIC_DIRECTORY = path.resolve(__dirname, '../dist/');
const cache = {};
@tkrotoff
tkrotoff / FrontendFrameworksPopularity.md
Last active May 3, 2025 06:52
Front-end frameworks popularity (React, Vue, Angular and Svelte)
@arainho
arainho / zoom_uninstall_macos.sh
Last active April 13, 2025 20:57
uninstall zoom.us and disable nasty features
#!/usr/bin/env bash
# sources
https://drive.google.com/drive/folders/1MP0cNLyJjzPLNrvNDCZv9hRuif091f0c
https://apple.stackexchange.com/questions/358651/unable-to-completely-uninstall-zoom-meeting-app
https://medium.com/bugbountywriteup/zoom-zero-day-4-million-webcams-maybe-an-rce-just-get-them-to-visit-your-website-ac75c83f4ef5
echo Stopping Zoom...
pkill "zoom.us"

How to enable page translator in Firefox

Firefox has a page translator (similar to one in Chrome) turned off by default. Even though it is a bit buggy, it works well enough for a normal user.

Here is how to enable it:

  1. Сreate Yandex.Translate API key*:
  • Make yourself familiar with Yandex Translator API Terms of Use.
  • Create a Yandex Translator API key (you gonna need a Yandex account).
  1. Go to about:config and:
@sindresorhus
sindresorhus / esm-package.md
Last active May 5, 2025 10:05
Pure ESM package

Pure ESM package

The package that linked you here is now pure ESM. It cannot be require()'d from CommonJS.

This means you have the following choices:

  1. Use ESM yourself. (preferred)
    Use import foo from 'foo' instead of const foo = require('foo') to import the package. You also need to put "type": "module" in your package.json and more. Follow the below guide.
  2. If the package is used in an async context, you could use await import(…) from CommonJS instead of require(…).
  3. Stay on the existing version of the package until you can move to ESM.
@stokito
stokito / howto_webdav_lighttpd_openwrt.md
Last active October 22, 2023 11:46
WebDAV with Lighttpd on OpenWRT