Skip to content

Latest commit

 

History

24 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

CONVERT/ALL

A browser-based file conversion bench that runs entirely client-side. No server, no build step, no upload. Just open index.html in a browser.

Run it

Open index.html directly in a browser. No install or toolchain is required. The project uses plain <script src="..."> files, so it works from file://.

What it does

  • Image conversion: PNG/JPEG/WEBP/AVIF/BMP/ICO plus scale, rotate, flip, and exact size controls.
  • Audio conversion: browser-decoded input → WAV output.
  • Data conversion: JSON, NDJSON, CSV, TSV, XML, YAML.
  • PDF tools: images → PDF, PDF → images, merge PDFs, split PDFs, extract PDF text.
  • Archive tools: create ZIP, extract ZIP, gzip a file, ungzip a file.

Project structure

  • index.html — UI layout, tool panels, and library script includes.
  • css/style.css — shared app styles, theme switching, and custom dropdown styling.
  • js/core.js — shared helpers, tab switching, theme loading, drag-and-drop setup.
  • js/images.js — image conversion logic, canvas rendering, BMP/ICO encoding.
  • js/audio.js — audio decoding + WAV export.
  • js/data.js — data parsing and serialization.
  • js/pdf.js — PDF rendering, image export, merging, splitting, and text extraction.
  • js/archive.js — ZIP and GZIP compression/decompression.

Third-party libraries

Loaded from CDNJS in index.html:

  • JSZip — ZIP creation and extraction.
  • jsPDF — PDF generation from images.
  • pdf.js — PDF page rendering and text extraction.
  • pdf-lib — PDF merging and splitting.
  • js-yaml — YAML parsing and serialization.
  • pako — gzip/gunzip.

Notes

  • The app is built to work as a static site.
  • If you later add ES module syntax (import / export), a local server will be required.
  • Video transcoding is not included.

Deploying to the web

This project is ready for static hosting. Recommended options:

  • GitHub Pages: enable Pages on the main branch and use the repository root.
  • Netlify / Vercel: connect the repo and publish the root folder.
  • Any static host that serves index.html, css/style.css, and js/*.js.

GitHub Pages

  1. Push your repo to GitHub.
  2. Open the repository settings and enable GitHub Pages.
  3. Choose the main branch and / (root) as the source.
  4. Your site will be available at https://<username>.github.io/<repo-name>/.

Because this app uses plain static assets and CDN-hosted libraries, no build step is needed for publishing.

About

Browser-based file conversion bench for images, audio, data, PDF, and archives. No server, no uploads, no build, everything runs locally in the browser.

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages