ARTICLES
Articles
Deeper dives into the privacy-by-design choices behind NoSend Tools, the technology stack that makes browser-only processing possible, and the release log.
- Format comparisons
bcrypt vs Argon2 vs scrypt — which password-hashing KDF should you pick?
Why you must not store passwords with SHA-256 alone, and how bcrypt, Argon2, and scrypt compare across CPU cost, memory hardness, parallel-attack resistance, and library maturity.
- Format comparisons
CSV vs TSV vs JSON — which data exchange format should you pick?
Compare three data exchange formats for spreadsheet exports, API responses, and ETL pipelines by structural expressiveness, parsing ease, and tool support. Covers CSV escape hell and JSON size bloat.
- Format comparisons
GIF vs APNG vs WebP animation vs MP4 — which to use for short loops?
Compare four formats for short looping clips (social posts, doc walkthroughs, bug repros) by file size, colour palette, transparency, and autoplay behaviour. Why GIF has become wildly oversized today.
- Format comparisons
HEIC vs JPG for iPhone photos — which format should you save in?
Compare iOS High Efficiency (HEIC) and Most Compatible (JPEG) settings by file size, image quality, and cross-device openability. When you should convert before sharing and what you lose.
- Format comparisons
HEX vs Base64 vs Base58 — picking a binary-to-text encoding
Compare hex, Base64, and Base58 for hashes, tokens, IDs, and wallet addresses by size efficiency, URL safety, readability, and use case. Why Base58 became the standard for cryptocurrency addresses.
- How-to guides
How to compress a PDF entirely in the browser
Shrink a PDF without uploading it anywhere. Walks through how image re-encoding and stripped objects reduce file size in the browser, with notes on quality trade-offs.
- How-to guides
How to convert iPhone HEIC photos to JPG without uploading
Convert HEIC photos from iPhone to JPG or PNG entirely in the browser. Why HEIC opens nowhere outside Apple, and how libheif-js decodes it locally.
- How-to guides
How to convert a video clip into an animated GIF
Turn an MP4 or WebM into a looping GIF. Explains how frame rate, resolution, and palette size trade against file size, all converted locally with ffmpeg.wasm.
- How-to guides
How to decode a JWT token and inspect its claims
Paste a JWT and read its header and payload. Walks through the Base64URL structure, what exp and iat mean, and why decoding alone does not verify the signature.
- How-to guides
How to decode mojibake and recover the original Japanese text
Recover the original Japanese behind mojibake such as 繧エ繝�, ã®ã, or ???. Walks through how Shift_JIS / EUC-JP / UTF-8 / ISO-2022-JP encoding mismatches are inverted by brute force, all inside the browser.
- How-to guides
How to extract audio from a video file (MP3 / WAV)
Pull the audio track out of an MP4 or MOV and save it as MP3 / WAV. Uses ffmpeg.wasm in the browser so the source video never leaves the device.
- How-to guides
How to merge and split PDF files in the browser
Combine several PDFs into one, or cut a single PDF into page ranges. Covers how pdf-lib preserves pages losslessly while running entirely in your tab.
- How-to guides
How to strip EXIF (camera, GPS) from images locally
Remove camera, timestamp, and GPS metadata before sharing photos. Explains how EXIF lives inside JPEG / PNG and how to wipe it in the browser with no upload.
- How-to guides
How to remove the background from an image (product shots, portraits)
Cut out the background of product photos and portraits to a transparent PNG. Runs the RMBG segmentation model locally via WebAssembly so the image never leaves your tab.
- How-to guides
How to remove noise from audio recordings (meetings, interviews)
Reduce hiss, fan noise, and rumble from meeting and interview recordings. Compares spectral subtraction with high-pass filtering and warns about over-processing artefacts.
- How-to guides
How to set up a HIIT / Tabata interval timer in the browser
Run HIIT and Tabata rounds straight from a browser tab — no app install. Walks through configuring warm-up / work / rest / cool-down, Web Audio beeps for phase changes, and how the timer stays accurate when the tab is backgrounded.
- How-to guides
How to unlock a password-protected PDF (when you know the password)
Strip the password from a PDF you legitimately own, entirely in the browser. Covers the difference between owner and user passwords and when you should leave protection in place.
- Format comparisons
HTML escape vs URL encode vs Base64 — which one when?
Compare three encodings web developers reach for daily, by purpose (safe embedding / transport compatibility / binary-to-text), scope of application, and character set. Includes common misuse patterns.
- Format comparisons
JPG vs PNG vs WebP vs AVIF — which image format should you pick?
Pick between JPG, PNG, WebP and AVIF using four axes: compression scheme, file size, browser support, and transparency. Includes a browser-only conversion path between them.
- Format comparisons
JWT vs session cookie — how should your app track login state?
Compare stateless JWTs and server-side session cookies for web auth across four axes: server-side state, revocation, scalability, and risk. Includes the different CSRF and XSS threat models each implies.
- Format comparisons
Markdown vs HTML vs RTF — picking a lightweight document format
Compare Markdown, HTML, and RTF for READMEs, meeting notes, email drafts, and Word handoffs by portability, expressiveness, tooling, and how the recipient renders it.
- Format comparisons
MD5 vs CRC32 vs SHA-256 — picking a file integrity check
Compare three checksums for download corruption detection, tamper detection, and duplicate file matching by speed, output length, collision resistance, and use case. Why CRC32 is not a tamper check.
- Format comparisons
MP3 vs WAV vs FLAC vs OGG vs AAC — which audio format should you pick?
Compare five audio formats by compression scheme (lossy / lossless / uncompressed), file size, compatibility, and use case. The right answer depends on whether you are distributing, editing, or archiving.
- Format comparisons
MP4 vs WebM vs MOV vs MKV — which video container should you pick?
Compare four video containers by the codecs they typically wrap (H.264 / H.265 / VP9 / AV1), browser support, and use case (delivery / editing / archive). Maps each to social, NLE, and web embedding.
- Format comparisons
RGB vs CMYK — switching between screen and print color models
When to author in RGB and when in CMYK, compared by additive vs subtractive mixing, gamut, print process, and submission file formats. Why an RGB → CMYK conversion typically dulls saturated colors.
- Format comparisons
RGB vs HSL vs OKLCH — which color space should you author in?
Compare three color spaces used in CSS, design tools, and image processing by perceptual uniformity, interpolation quality, and implementation availability. Why CSS Color Module 4 favours OKLCH.
- Format comparisons
SHA-256 vs MD5 vs SHA-1 — which hash algorithm should you pick?
Compare three hash algorithms used for file integrity, password storage, and digital signing by collision resistance, speed, and practical security. Explains why MD5 and SHA-1 are considered broken today.
- Format comparisons
SVG vs PNG — when to use vector and when to use raster
Pick between SVG and PNG for logos, icons, diagrams, and photos using four axes: resolution dependence, file size, editability, and browser support. Includes the trade-offs when converting between them.
- Format comparisons
TIFF vs DNG vs CR2 — comparing professional camera formats
Compare TIFF, Adobe DNG, and vendor RAW formats (CR2 / NEF / ARW) for professional photo workflows, print submission, and long-term archival, across reversibility, vendor lock-in, editor support, and archive readiness.
- Format comparisons
UTF-8 vs Shift_JIS vs EUC-JP — which Japanese encoding should you pick?
Compare three Japanese encodings by character coverage, byte structure, and modern compatibility. Maps each to CSV exports, file handoffs, and legacy system integration — and the pairs that produce mojibake.
- Format comparisons
WAV 16-bit vs 24-bit vs 32-bit float — picking an audio bit depth
Compare audio bit depths for recording, editing, and distribution by dynamic range, file size, clipping headroom, and compatibility. Why 32-bit float matters during editing and when 16-bit is fine for distribution.
- Format comparisons
YAML vs JSON vs TOML — which config format should you pick?
Compare YAML, JSON, and TOML for app configuration, CI/CD, and infrastructure-as-code by readability, expressiveness, parse strictness, and tooling. Includes YAML pitfalls like the Norway problem.
- Format comparisons
ZIP vs TAR vs 7z — which archive format should you pick?
Compare ZIP, TAR.gz, and 7z for distribution packaging, backups, and Linux server transfer by compression ratio, cross-platform support, metadata preservation, and random-access reads.
- Privacy deep-dive
Three classes of privacy risk in audio processing — and how browser-only tools address them
Conversations captured in recordings, voice as biometric data, and context leaked through ID3 tags or background sounds — audio tools carry distinct risk layers. Here is how NoSend Tools handles each class without sending data outside your browser, with concrete references to Whisper, the Web Audio API, and lamejs.
- Release notes
June 2026 updates: share URLs, long-form articles, and a blog
Three major changes shipped in June 2026: share URLs rolled out to every tool, every tool gained a long-form article, and this blog launched. Here's the context and intent behind each.
- Privacy deep-dive
Japanese tax and social-insurance calculators: why browser-only processing matters most here
Salary figures, freelance gross income, household composition, property valuations, estate estimates — the inputs to Japanese tax and social-insurance calculators rank among the most sensitive numbers in a person's life. Here is why the gap between "free online tax calculator" and "browser-only calculator" is especially meaningful for this category of tools.
- Library notes
How kuromoji.js powers the Japanese tools on NoSend Tools
The Japanese tools on NoSend Tools — kanji-to-hiragana, kanji-to-romaji, wakati-tokenize, furigana-html, japanese-counter-word and more — all run morphological analysis in the browser using kuromoji.js. Here is what the 12 MB IPADIC dictionary contains, how Viterbi tokenisation works, and what it means to run Japanese NLP without sending text to a cloud API.
- Library notes
How transformers.js runs ML models inside the browser
HuggingFace's transformers.js uses ONNX Runtime Web to run models like Whisper and RMBG-1.4 entirely in the browser. Model weights are downloaded and cached locally; your audio and images never leave your machine.
- Privacy deep-dive
Three classes of privacy risk in image processing — and how browser-only tools address them
GPS leaks from EXIF metadata, sensitive face data and unreleased designs passing through servers, and the amplification of privacy exposure when multiple photos are combined — image tools carry distinct risk layers. Here is how NoSend Tools handles each class without sending data outside your browser.
- Library notes
How pdf-lib and PDF.js split responsibility for in-browser PDF work
NoSend Tools' PDF suite is built on two libraries with very different jobs: pdf-lib for creation and editing, PDF.js for rendering and parsing. Here is why the split exists, what each library handles, why PDF structure makes this harder than it looks, and why keeping the whole pipeline inside the browser matters for documents that frequently contain personal or legal data.
- Library notes
How ffmpeg.wasm confines video processing to a browser tab
ffmpeg.wasm compiles the C ffmpeg project into a WebAssembly module that runs entirely inside a browser. This post explains what is actually downloaded (~30 MB), how SharedArrayBuffer and cross-origin isolation enable multi-threaded encoding, and why the WASM sandbox itself enforces the "media never leaves your device" guarantee.
- Privacy deep-dive
Audit "we don't send your data" yourself with DevTools and GitHub
A privacy claim in a footer is just trust. NoSend Tools is built so the claim is verifiable in two ways: open DevTools and see no requests, or read the source on GitHub. Here is how to do each.
- Release notes
May 2026: NoSend Tools launch and the first 100 tools
NoSend Tools launched in May 2026. Following the actual commit log, here's what got built in the first three weeks and how the architectural choices played out.
- Privacy deep-dive
WebAssembly changed the default for in-browser processing
A decade ago, video conversion and PDF editing on the web defaulted to server-side processing because nothing else worked at acceptable speed. WebAssembly broke that assumption. Here's the technical stack NoSend Tools relies on, and why it matters.
- Privacy deep-dive
The structural risk that remains in upload-based services
"Files are deleted right after processing" is a promise users cannot verify after the fact. Once data leaves your machine over the network, it has already passed through caches, logs, and infrastructure outside your control. Here's why NoSend Tools doesn't transmit user input at all.