Hash Generator
Generate SHA-256, SHA-384, SHA-512, SHA-1 and MD5 digests instantly.
Security Note: All hashing is performed locally in your browser. No data is sent to any server. SHA-256, SHA-384, and SHA-512 are recommended for security purposes. SHA-1 and MD5 are included for compatibility but are considered cryptographically broken.
Security Note: Passwords are generated locally using cryptographically secure random values. No data is sent to any server. Use passwords of at least 12 characters with mixed character types for best security.
Security Note: Random strings are generated locally using cryptographically secure random values. No data is sent to any server. Useful for API keys, tokens, unique identifiers, and test data.
Security Note: Bcrypt hashing is performed locally in your browser using the bcryptjs library. No data is sent to any server. Bcrypt is designed to be slow and resistant to brute-force attacks, making it ideal for password hashing.
Security Note: Base64 is an encoding, not encryption. It does not protect data. All conversion is performed locally in your browser. No data is sent to any server. UTF-8 text (including emoji) is fully supported.
Privacy Note: Counting is performed locally in your browser as you type. No data is sent to any server. "Characters" counts every character including spaces, tabs and new lines. Emoji are counted as single characters.
Privacy Note: Case conversion is performed locally in your browser as you type. No data is sent to any server. Title and sentence case understand Unicode letters, and camelCase, snake_case and kebab-case split existing words automatically.
Privacy Note: Encoding and decoding happen locally in your browser — images never leave your device. Note that Base64 inflates data by ~33%, so large images produce very long output. Recognized formats: PNG, JPEG, GIF, WebP, BMP and SVG.
Images 0
Add images to resize them in bulk.
No images yet
Drop your images here or use Add Images to get started. Everything is processed on your device.
Up to 50 images · max 10 MB eachPrivacy Note: Resizing happens entirely in your browser using the HTML canvas API — images are never uploaded. Add up to 50 images (10 MB each). Output is re-encoded, so animated GIFs become a still frame and formats the canvas cannot encode are exported as PNG. Social Media presets center-crop to the exact size. Maximum output dimension is 10,000 px.
PDF Files 0
Add PDFs to convert their pages or images.
No PDFs yet
Drop PDFs here or use Add PDFs. Pages and embedded images are converted entirely on your device.
Up to 10 PDFs · max 100 MB eachConverted Images 0
Privacy Note: PDFs are parsed and rendered entirely in your browser with PDF.js — files are never uploaded. Page mode renders each selected page; Extract images pulls embedded raster images out of the PDF and is best-effort for unusual masks, tiling, or unsupported image codecs. JPG output fills transparent areas with white. Maximum output dimension is 10,000 px.
Images 0
Add images and arrange their page order.
No images yet
Drop images here or use Add Images. Each image becomes a page in a single PDF.
Up to 50 images · max 10 MB eachPrivacy Note: Images are combined into a PDF entirely in your browser with pdf-lib — nothing is uploaded. JPG and PNG files are embedded without unnecessary recompression. Drag cards to reorder them, or use the arrow buttons. Fit mode creates a page for each image; A4 and Letter scale images proportionally inside the selected margins.
PDF File 0
Add a PDF to extract its text.
No PDF yet
Add a text-based PDF. Its selectable text is extracted locally and packaged as an editable Word document.
Scanned PDFs need OCR and cannot be convertedPrivacy Note: The PDF is parsed with PDF.js and the Word file is assembled entirely in your browser — nothing is uploaded. Password-protected PDFs prompt for their password locally. This is a text extraction, not a layout-perfect converter; scanned pages without a text layer need OCR first.
PDF File 0
Add a PDF to split its pages.
No PDF yet
Add a PDF, choose how to split it, and download the resulting files individually or as a ZIP.
Everything happens on your deviceSplit Files 0
Privacy Note: Splitting is performed entirely in your browser with pdf-lib — the PDF never leaves your device. Password-protected inputs prompt for their password locally. Use custom ranges to extract chapters or selected pages into separate PDFs.
PDF Files 0
Add PDFs, then arrange their order.
No PDFs yet
Add two or more PDFs and use the arrow buttons to set the page order before merging.
Up to 20 PDFs · max 100 MB eachPrivacy Note: PDFs are merged locally with pdf-lib in the order shown — nothing is uploaded. Password-protected files prompt for their passwords in your browser. Use the arrow buttons to move a file up or down before merging.
PDF File 0
Add a PDF to stamp a text watermark.
No PDF yet
Add a PDF and stamp a visible text watermark across its pages. The original file is never modified.
Watermarks are visual onlyPrivacy Note: Watermarks are drawn with pdf-lib directly in your browser — the PDF is never uploaded. Watermarks are visual overlays, not digital rights management. Standard PDF fonts support Latin characters; decorative scripts and some symbols may not render.
PDF File 0
Add a PDF to encrypt it.
No PDF yet
Add a PDF to encrypt it with AES-256 and choose what readers are allowed to do.
Passwords are never stored or uploadedPrivacy Note: Encryption uses AES-256 and happens entirely in your browser with pdf-lib — your file and password never leave your device. There is no password recovery: keep the password safe. Some PDF readers may ignore permission flags even when encryption is applied.