CSV to Excel reads commas, quotes, and line breaks in the browser and writes an XLSX with SheetJS. The first row becomes the first row of the sheet, which most people treat as the header. Numbers that were text in the CSV stay text unless Excel later guesses. No formula is invented, because a CSV does not contain formulas. The older XLS format is also in the format list if you need it. Nothing is uploaded.
The drop zone reads the file in this tab. Images can become JPG, PNG, WEBP, a single-frame GIF, BMP, ICO, or AVIF when the browser can encode AVIF. HEIC and HEIF are decoded with heic2any, and that library is fetched only after a HEIC file is dropped. SVG is rasterised from its width or viewBox. Several images can become one PDF, one picture per page. A PDF can become a JPG or PNG of each page, up to 20 pages. Tables move between CSV, TSV, JSON, a simple row-shaped XML, XLSX, and older XLS. Text moves between TXT, a small Markdown subset, and HTML. DOCX becomes HTML or plain text with Mammoth, which keeps headings and paragraphs and drops text boxes and tracked changes.
This is not a universal office suite. PDF to Word is not offered: a browser cannot rebuild an editable document with the original styles, and a picture of a page is not that document. Audio and video, including MP4, MOV, WEBM, MKV, MP3, WAV, M4A, OGG, and FLAC, are not converted. ffmpeg.wasm is about 30 MB and was too heavy and unreliable to ship here, so there is no MP4 to MP3 page and no MOV to MP4 page. Animated GIFs keep the first frame. Spreadsheet formulas become values. Passworded PDFs stay locked. Nothing is uploaded. For a JPG or PNG that only needs to become a PDF, JPG to PDF is the narrower tool. To shrink a photo toward a kilobyte target, use compress image. To shrink a PDF by redrawing pages, use compress PDF.