FileConcat - Combine files into one AI-ready document

Drop a folder, files, or an archive. The noise gets stripped and out comes one clean document for ChatGPT, Claude, or Gemini. Runs in your browser, no setup, no account, nothing uploaded.

Add a comment

Replies

Best
Hey Product Hunt 👋 FileConcat is back. The first version was basically "cat for codebases": drop a repo, get one clean file to paste into ChatGPT or Claude. That part still works, it just does a lot more now. The big addition is documents. It reads PDF, Word, Excel, PowerPoint and OpenDocument files and pulls the text out right in the browser, on by default. If a file is scanned or empty it gets flagged instead of quietly dropped, so you know to OCR it first. You can also feed it from more places: a local folder, an archive, or a public GitHub / GitLab / Bitbucket / Gist / URL. If a repo is too big to fetch whole it says so, rather than handing you a silent partial. And it isn't only for developers anymore. Lawyers, researchers, students, anyone throwing a pile of files at an assistant. The output labels itself so the model treats it as a case file or a reading pile instead of source code. The one thing I didn't touch is privacy. Everything runs in your browser. Nothing gets uploaded, no account. Open your network panel, drop some files, and you'll see zero requests leave the page. That's the reason confidential material can go through it at all. It still counts tokens live against 200+ models so you know a bundle fits before you paste, and splits it into parts when it doesn't. Same engine ships as a CLI (npm i -g /cli), pipe-safe for coding agents. Free and MIT licensed. Curious what you'd want it to handle next.

   Dropping a repo, a folder of PDFs, or an archive and getting back one clean, AI-ready file — noise stripped, no setup — is the boring-but-constant chore everyone doing AI work repeats by hand. Solving it in one step is the kind of tool people quietly keep open all day.

The turn-a-mess-into-one-file flow is best understood by watching it, and you launched without a demo — so I made you one, free and whitelabel, no strings, for your launch page media:


Yours to keep — download it from and put it on your own channel or launch page. Launches with a video do better, and yours is still editable. Made at — make more there, or record your own product tour in ~2 minutes. Anyone else launching soon: paste your site, video in about 30 seconds. Great work shipping this.

how does it handle stuff like code comments or markdown formatting when it strips the noise, does it keep the structure intact or just flatten everything to plain text?

 Good question. Nothing inside a file gets touched: code comments, markdown formatting, whitespace all stay exactly as they are. The "noise stripping" happens at the file level, not the content level. It's deciding which files to leave out (node_modules, lock files, .git, build output, anything in .gitignore), not rewriting what's inside the ones it keeps.

So structure stays fully intact. Each file goes into its own block with its path and language, and there's a file tree at the top so the model sees the layout before any content. The only files that get transformed are documents (PDF, Word, etc.), where text extraction is the whole point, and even there it's pulling text out, not reformatting your code/content.