About OpenedFile
Why This Site Exists
OpenedFile started with a file I couldn't open.
An email arrived with an attachment called winmail.dat.
No recognizable extension, no way to open it, no indication of what was inside. I did what anyone
would do and searched for a converter — and that's where the real problem started. Every service
I found worked the same way: upload your file to our server, and we'll send back the contents.
That's a strange thing to be asked to do. A winmail.dat file is, by definition, an email someone sent you. It might contain a contract, an invoice, an internal document. Handing that to an anonymous website just to find out what's inside it felt backwards — and I noticed the Japanese guides on the subject all carried the same warning: don't upload files containing confidential information. Everyone knew it was a bad trade. There just wasn't an alternative.
So I wrote the decoder myself. TNEF — the Microsoft format hiding inside every winmail.dat — is documented well enough to implement from scratch, and once it runs in JavaScript there is no reason for the file to go anywhere at all. That parser became the first tool on this site, and the rule it established applies to everything here since: your file is processed on your device and is never uploaded, not to my server and not to anyone else's.
Who Runs It
Ren
Developer, OpenedFile
I design, build, and maintain OpenedFile on my own — the tools, the parsers, the articles, and the site itself. There is no company and no team behind it. If something here is wrong or broken, it's mine to fix, and telling me about it is the fastest way to get it fixed.
What "No Upload" Actually Means
Plenty of sites claim to be private. Here is the specific, checkable version of that claim: when you use a tool on OpenedFile, no network request carrying your file is ever made. The conversion runs in your browser using JavaScript, WebAssembly, and the HTML5 Canvas API.
You don't have to take my word for it. Open your browser's developer tools, switch to the Network tab, and convert a file. You will see the page and its scripts load — and then nothing. No upload, no POST request, no file leaving the tab.
This design has consequences that are worth being upfront about:
- Complete privacy: your files never travel over the internet, so there is no server-side breach, retention, or third-party sharing to worry about.
- Speed: there is no upload or download round trip. Conversion time depends on your device, not your connection.
- Works offline: once the page has loaded, most tools keep working without a network connection.
- No account, no email, no limits imposed by me: the only real ceiling is your device's available memory.
- The honest trade-off: because everything runs locally, a very large file on a low-memory phone can be slower than a server would be, and the browser has to support the format. I think that's a price worth paying to never hand over your file.
The Tools
Winmail.dat Viewer & Extractor
The one that started the site. Opens winmail.dat attachments from Outlook, shows the subject, sender and message body, and lets you download every embedded attachment. Built on a TNEF parser I wrote from scratch in TypeScript, including handling for Shift_JIS and UTF-16LE filenames that many tools get wrong.
Outlook MSG Viewer
Opens .msg files without Outlook installed. Built on a compound-file reader written here, because a .msg is a small filesystem in a single file rather than an email.
What Is This File?
Reads a file's signature and names the format — around 150 of them — then either opens it here or tells you which application will.
EML File Viewer
Reads .eml email files without Outlook or Thunderbird. Full headers, plain-text and HTML views, attachment downloads, and a save-as-text option. HTML bodies are sanitized with DOMPurify and rendered inside a sandboxed iframe.
HEIC to JPG/PNG Converter
Converts iPhone and iPad HEIC/HEIF photos to JPG or PNG, in batches, with an adjustable quality setting. Decoding runs through WebAssembly so it stays fast without a server.
WebP to JPG/PNG Converter
Turns WebP images downloaded from the web into formats every application accepts. Batch conversion with quality control, using the browser's own Canvas encoder.
VCF to CSV Converter
Converts vCard contact files into a spreadsheet-ready CSV, with a UTF-8 BOM so Excel opens Japanese names correctly instead of turning them into garbage.
How It Works Under the Hood
- Custom TNEF parser: the winmail.dat tool uses a purpose-built TypeScript parser that walks the binary TNEF structure, reads MAPI properties, and resolves attachment names across multi-byte encodings. No third-party library does this in the browser, so it had to be written.
- WebAssembly: HEIC/HEIF decoding runs as Wasm, which is what makes near-native speed possible for work that would crawl in plain JavaScript. It's also loaded on demand, so you only pay for it if you actually convert a photo.
- HTML5 Canvas API: image format conversion uses the browser's own encoder rather than shipping an image library.
- DOMPurify + sandboxed iframe: email HTML is untrusted by definition. It is sanitized before display and then rendered inside a sandboxed iframe, so a malicious message can't reach the page around it.
What's Next
The most recent additions are the MSG viewer, which completes the set of three ways an Outlook message can reach you, and the file identifier, which reads a file's signature and tells you what it is even when this site cannot open it. What I'm considering next, roughly in order:
- More per-format write-ups, for the files people arrive here unable to open
- An S/MIME (.p7m) reader — encrypted mail attachments, the same shape of problem as winmail.dat
- SVG to PNG/JPG conversion
PDF utilities were on this list for a while and have come off it. Merging and splitting a PDF is a task, not a file you cannot open, and it is served by a dozen established sites already. This site is better at the other thing.
If one of these would actually help you, or if there's a format you keep getting stuck on, tell me — it moves up the list. Get in touch.