Skip to content

Instantly share code, notes, and snippets.

View drazik's full-sized avatar

Cyrille Perois drazik

View GitHub Profile
@akersten
akersten / userChrome.css
Last active February 26, 2024 20:39
userChrome.css to hide Firefox native tab bar and extension sidebar header (for use with TreeStyleTabs)
/*
* about:config -> toolkit.legacyUserProfileCustomizations.stylesheets : True
* about:support -> Profile Folder -> Open Folder
* Create `chrome` direcory
*/
#tabbrowser-tabs {
visibility: collapse !important;
}
@aanari
aanari / set-alacritty-default.sh
Last active June 15, 2025 21:10
Set Alacritty as Default Terminal Editor (Ubuntu)
sudo update-alternatives --install /usr/bin/x-terminal-emulator x-terminal-emulator $(which alacritty) 50
sudo update-alternatives --config x-terminal-emulator
@sindresorhus
sindresorhus / esm-package.md
Last active May 18, 2026 20:48
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.
@slavafomin
slavafomin / 00-typescript-esm.md
Last active October 23, 2025 18:19
Using TypeScript with native ESM

Using TypeScript Node.js with native ESM

This reference guide shows how to configure a TypeScript Node.js project to work and compile to to native ESM.

Rationale

CommonJS module system was introduced by the Node.js developers due to the lack of the notion of "modules" in the original JavaScript (ECMAScript) language specification at that time. However, nowadays, ECMAScript has a standard module system called ESM — ECMAScript Modules, which is a part of the accepted standard. This way CommonJS could be considered vendor-specific and obsolete/legacy. Hopefully, TypeScript ecosystem now supports the "new" standard.

So the key benefits are: