Skip to content

Instantly share code, notes, and snippets.

const express = require('express');
const multer = require('multer');
const app = express();
const router = express.Router();
const path = require('path');
const Storage = multer.diskStorage({
destination: './public/images',
filename: (req, file, cb) => {
const fileName =
@bradtraversy
bradtraversy / node_nginx_ssl.md
Last active July 18, 2025 00:13
Node app deploy with nginx & SSL

Node.js Deployment

Steps to deploy a Node.js app to DigitalOcean using PM2, NGINX as a reverse proxy and an SSL from LetsEncrypt

1. Sign up for Digital Ocean

If you use the referal link below, you get $10 free (1 or 2 months) https://m.do.co/c/5424d440c63a

2. Create a droplet and log in via ssh

I will be using the root user, but would suggest creating a new user

@viclafouch
viclafouch / clipboard.js
Last active December 7, 2023 23:10
How to copy an image or a text to clipboard in Javascript (new way !) See https://copy-to-clipboard.now.sh/
// @return Promise<boolean>
async function askWritePermission() {
try {
// The clipboard-write permission is granted automatically to pages
// when they are the active tab. So it's not required, but it's more safe.
const { state } = await navigator.permissions.query({ name: 'clipboard-write' })
return state === 'granted'
} catch (error) {
// Browser compatibility / Security error (ONLY HTTPS) ...
return false
@sindresorhus
sindresorhus / esm-package.md
Last active July 23, 2025 15:49
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.
@suntong
suntong / Get Ready For ESM.md
Last active August 21, 2024 05:15
Get Ready For ESM

Get Ready For ESM

Note,

The following was first published by Sindre Sorhus in Jan 13 2021 at https://blog.sindresorhus.com/get-ready-for-esm-aa53530b3f77 but have since disappeard from the Internet. Thus republishing it below --

JavaScript Modules will soon be a reality for Node.js package maintainers.