Sindre Sorhus @sindresorhus.com · 26/09/2026Node.js has FFI support now, which makes it possible to implement native integrations without all the build problems that comes with native addons. For example, I just made github.com/sindresorhus...github.comGitHub - sindresorhus/finder-alias: Resolve and create macOS Finder aliasesResolve and create macOS Finder aliases. Contribute to sindresorhus/finder-alias development by creating an account on GitHub. 2191
Sindre Sorhus @sindresorhus.com · 14/09/2026I have 8 accepted security vulnerabilities for iOS 27 and macOS 27 support.apple.com/en-us/149034 support.apple.com/en-us/149035support.apple.comAbout the security content of iOS 27 and iPadOS 27 - Apple SupportThis document describes the security content of iOS 27 and iPadOS 27. 3313
Reposted by Sindre SorhusIndie App Catalog @indieappcatalog.com · 31/08/2026This week's Catalog Pick: Pure Paste by @sindresorhus.com Copying text shouldn’t bring webpage clutter with it. Pure Paste strips formatting, tracking parameters, and invisible characters before you paste, while leaving files, images, and passwords alone. indieappcatalog.com/picks/pure-p...indieappcatalog.comIndie App Catalog: Discover great appsDiscover great apps and support independent development 002
Sindre Sorhus @sindresorhus.com · 14/09/2026I moved from Raycast since they made it non-native and bad. Tinycast is a great native replacement: github.com/abue-ammar/t...github.comGitHub - abue-ammar/tinycast: Tinycast — a tiny, fully native macOS launcher, hotkeys, and clipboard history.Tinycast — a tiny, fully native macOS launcher, hotkeys, and clipboard history. - abue-ammar/tinycast 4554
Sindre Sorhus @sindresorhus.com · 17/07/2026One more ESLint plugin Lint your package.json github.com/sindresorhus...github.comGitHub - sindresorhus/eslint-package-json: Powerful ESLint rules for package.jsonPowerful ESLint rules for package.json. Contribute to sindresorhus/eslint-package-json development by creating an account on GitHub. 170
Sindre Sorhus @sindresorhus.com · 09/07/2026New in Supercharge You can now switch Spaces without any slide animation using customize keyboard shortcuts. All changes: sindresorhus.com/supercharge/...sindresorhus.comRelease Notes — Supercharge 0100
Sindre Sorhus @sindresorhus.com · 02/07/2026If you use the Node.js test runner (node:test), you may like the new ESLint plugin I cooked up. 64 rules to improve your tests, prevent mistakes, and enforce style. github.com/sindresorhus...github.comGitHub - sindresorhus/eslint-node-test: ESLint rules for the Node.js built-in test runner (`node:test`)ESLint rules for the Node.js built-in test runner (`node:test`) - sindresorhus/eslint-node-test 0212
Sindre Sorhus @sindresorhus.com · 26/06/2026And all known bugs were fixed. And it gained some non-JS rules: github.com/sindresorhus...github.comGitHub - sindresorhus/eslint-plugin-unicorn: More than 300 powerful ESLint rulesMore than 300 powerful ESLint rules. Contribute to sindresorhus/eslint-plugin-unicorn development by creating an account on GitHub. 020
Sindre Sorhus @sindresorhus.com · 25/06/2026eslint-plugin-unicorn now has 300+ rules to catch bugs and improve your JavaScript github.com/sindresorhus...github.comGitHub - sindresorhus/eslint-plugin-unicorn: More than 300 powerful ESLint rulesMore than 300 powerful ESLint rules. Contribute to sindresorhus/eslint-plugin-unicorn development by creating an account on GitHub. 1181
Sindre Sorhus @sindresorhus.com · 18/06/2026If you know my Velja app, this is Velja, but for email links 020
Sindre Sorhus @sindresorhus.com · 17/06/2026For example, Make email links open in Gmail instead of the Mail app Or set up rules to automatically open work-related emails in Outlook 150
Sindre Sorhus @sindresorhus.com · 17/06/2026New app 📩 Mailway Route email links (mailto) to any email app or webmail sindresorhus.com/mailway 2223
Sindre Sorhus @sindresorhus.com · 10/06/2026Intentional. Social platforms compress it, so would do it disservice by having lower quality than it actually produces. 110
Sindre Sorhus @sindresorhus.com · 10/06/2026Requires macOS 26 Gifski is a video to animated GIF converter 150
Sindre Sorhus @sindresorhus.com · 10/06/2026After 3 years of work, Gifski 3 is here. Rewritten from scratch in SwiftUI, with cropping, GIF preview, exporting trimmed/cropped videos, loop delay, smarter estimates, improved performance, and lots of polish. github.com/sindresorhus... 4513
Sindre Sorhus @sindresorhus.com · 26/05/2026Send media keys to a specific app (Music or Spotify) Always send play/pause and next/previous track to the app you choose. Useful when macOS keeps sending media keys to the wrong app. sindresorhus.com/supercharge/...sindresorhus.comRelease Notes — Supercharge 020
Sindre Sorhus @sindresorhus.com · 26/05/2026Supercharge recently got some useful tweaks Mute microphone while typing Automatically mutes the microphone input while you're typing and unmutes shortly after you stop. Only activates when the microphone is in use. Useful for video calls with loud keyboards. 1110
Reposted by Sindre SorhusSindre Sorhus @sindresorhus.com · 08/04/2026Build your own HTTP client with fetch-extras Take only what you need. Tree-shakeable. Built on Fetch. Works in the browser, Node.js, etc. github.com/sindresorhus... 4676
Sindre Sorhus @sindresorhus.com · 09/04/2026Another thing I have been working on for a couple of months: Ink 7 New hooks: usePaste, useWindowSize, useBoxMetrics, useAnimation More props stuff for <Box>: maxWidth/maxHeight, aspectRatio, alignContent, position="static" Ink lets you build CLIs with React github.com/vadimdemedes...github.comRelease v7.0.0 · vadimdemedes/inkBreaking Require Node.js 22 19b5316 Require React 19.2+ cfaebbb Ink now uses useEffectEvent internally to avoid re-subscribing input handlers on every render Pressing Backspace now correctly ... 1200
Sindre Sorhus @sindresorhus.com · 08/04/2026- Before/after request hooks - Auto JSON body stringify - Default search parameters - Download/upload progress tracking - Pagination 140
Sindre Sorhus @sindresorhus.com · 08/04/2026It has everything you will need: - Retries - Timeouts - HTTP error throwing (non-2xx) - Base URL (resolve relative URLs against a base) - Default headers - Auto token refresh on 401 - Client-side rate limiting - Concurrency limiting - Request deduplication - In-memory caching 161
Sindre Sorhus @sindresorhus.com · 08/04/2026Build your own HTTP client with fetch-extras Take only what you need. Tree-shakeable. Built on Fetch. Works in the browser, Node.js, etc. github.com/sindresorhus... 4676
Sindre Sorhus @sindresorhus.com · 08/04/2026```js // baseUrl ky('users', {baseUrl: '/api/'}) //→ /api/users ky('/users', {baseUrl: '/api/'}) //→ /users (leading slash = origin-root) // prefix ky('users', {prefix: '/api'}) //→ /api/users ky('/users', {prefix: '/api'}) //→ /api/users (leading slash ignored) ``` 030
Sindre Sorhus @sindresorhus.com · 08/04/2026baseUrl vs prefix `baseUrl` uses standard URL resolution: `/users` means origin-root, `users` means relative to the base path. `prefix` does simple string joining first, so `/users` and `users` both append to the prefix the same way. Use it only when you want that behavior. 220
Sindre Sorhus @sindresorhus.com · 07/04/2026New `baseUrl` option fixes URL handling, `searchParams` option now merges, retries are now more precise by distinguishing failure types, built-in JSON schema validation. Ky is a tiny JS HTTP client built on top of the built-in Fetch. 170
Sindre Sorhus @sindresorhus.com · 07/04/2026For the past two months I have been working hard on Ky 2 and now it's finally out. All bugs fixed. All GitHub issues resolved. Cleaner API, stricter behavior, fewer footguns. github.com/sindresorhus... 1655
Sindre Sorhus @sindresorhus.com · 05/04/2026This is a iOS 26 bug. Unfortunately, nothing I can do anything about. 010
Sindre Sorhus @sindresorhus.com · 29/03/2026For example, the app icon was generated by the app. Unfortunately, I lost the prompt. 120
Sindre Sorhus @sindresorhus.com · 27/03/2026It depends on the image size you choose. But 16 GB is the minimum. For larger sizes, 48 GB or 64 GB is recommended. 020
Sindre Sorhus @sindresorhus.com · 25/03/2026Completely free Requires macOS 26, an Apple silicon Mac (no Intel), minimum 16 GB RAM, and 20 GB free disk space 131
Sindre Sorhus @sindresorhus.com · 25/03/2026It's likely that there is some instance of Aiko running in Shortcuts that never finished so it thinks something is running. Try to quit anything called Aiko and Intent Extension in Activity Monitor. I will look into better handling of this. 000
Sindre Sorhus @sindresorhus.com · 25/03/2026New app Imago 🦊 Generate images from text using Flux 2, locally on your computer sindresorhus.com/imago 2233
Sindre Sorhus @sindresorhus.com · 24/03/2026In the next update, I will add a "Get Date Added of File" action to get the date added. You can then use it to filter yourself with other actions. 120
Sindre Sorhus @sindresorhus.com · 22/03/2026Get Image URLs from Web Page Get Images from Web Page Get Meta Tags of URL Get Media Metadata Get Raw Media Metadata Convert Text File Encoding Manage Shortcut Lock Overlay Image (Extended) Scan Barcodes in Image Convert Number Base Find Points of Interest Calculate Bearing Parse/Make Markdown Table 030
Sindre Sorhus @sindresorhus.com · 22/03/2026sindresorhus.com/actions New actions: Ask for Input with Dialog Combine Audio Files Counter Keychain Make Live Photo from Video Create Temporary Folder Generate Emojis Filter List of Dictionaries Sort List of Dictionaries Remove Dictionary Values Get Contents of URL (Extended) Get Dates in Rangesindresorhus.comActionsAdditional actions for the Shortcuts app 140
Sindre Sorhus @sindresorhus.com · 22/03/2026Actions 4 ⚙️ Now with 180+ useful actions to elevate the Shortcuts app Completely free 2305
Sindre Sorhus @sindresorhus.com · 09/03/2026Disable Universal Clipboard — Stops clipboard syncing with your other Apple devices without disabling Handoff. For the Mission Control improvements tweak, you can now navigate between windows with arrow keys and press Return to bring one to the front. sindresorhus.com/supercharge/...sindresorhus.comRelease Notes — Supercharge 000
Sindre Sorhus @sindresorhus.com · 09/03/2026The rest: Middle-click a folder in the Finder sidebar to open it in a new tab. Archive old screenshots automatically Prevent accidentally dragging text — Sometimes you accidentally drag text and it creates a .textClipping file. This prevents that. 110
Sindre Sorhus @sindresorhus.com · 09/03/2026Some nice Finder improvements: Reopen last closed Finder tab with ⇧⌘T Paste image as file in Finder Pressing ⌘V in Finder with an image on the clipboard now saves it as a file. Normally, this does nothing. 130
Sindre Sorhus @sindresorhus.com · 08/03/2026New in Supercharge Add a sound effect to any keyboard shortcut For example, play a sound when you open Spotlight 190
Sindre Sorhus @sindresorhus.com · 25/02/2026And the reason I wrote the parser, to fix a 10+ year old macOS bug - "Put Back" being broken when programmatically trashing multiple files: github.com/sindresorhus...github.comRelease v3.0.0 · sindresorhus/macos-trashNow requires macOS 13 or later bc6f95a Fix "Put Back" not working for all files when trashing multiple files 7a77927 Fix files going to wrong trash when run with elevated privileges 13e1ae3 v2.2.... 010
Sindre Sorhus @sindresorhus.com · 25/02/2026I know I know. Super niche. But I was writing a parser (like one does), and thought; why not make an example app for it. The parser: github.com/sindresorhus...github.comGitHub - sindresorhus/DSStore: Parse and write macOS .DS_Store files from SwiftParse and write macOS .DS_Store files from Swift. Contribute to sindresorhus/DSStore development by creating an account on GitHub. 140
Sindre Sorhus @sindresorhus.com · 24/02/2026The app requires macOS 26, but you can get the last macOS 15 compatible version for free on my website: sindresorhus.com/shortcutie#o...sindresorhus.comShortcutiePower up the Shortcuts app on Mac 010
Sindre Sorhus @sindresorhus.com · 24/02/2026I'm excited to share that my Shortcutie app is now available on Setapp It provides 70+ powerful extra actions for the Shortcuts app on macOS sindresorhus.com/shortcutie 190
Sindre Sorhus @sindresorhus.com · 21/02/2026The upside down thing was likely a macOS 26 bug. Happened in one of my apps too. 060
Sindre Sorhus @sindresorhus.com · 20/02/2026I don’t get why Anthropic hasn’t used Claude Code to rewrite their bloated Electron app as native. Should be much easier than a C compiler. 810612
Sindre Sorhus @sindresorhus.com · 20/02/2026I’m not stopping. I’ll keep making apps the good way. I just think it’s soon going to become more of a passion thing than a real business opportunity in general. Which is fine. It’s always been passion for me anyway, not the money. It will feel more like restoring an old car than running a startup 0470
Sindre Sorhus @sindresorhus.com · 20/02/2026So being first isnt the edge. The edge is taste, trust, distribution, and going deeper than whats obvious from a quick glance at the UI. Surface ideas get cloned. Depth is harder. 4311