Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
"Everything" is a filename search engine for Windows (voidtools.com)
177 points by Bluestein on Aug 28, 2024 | hide | past | favorite | 101 comments


I've used Everything for as long as I can remember, and it has completely spoiled me on search/launcher functionality. Perfect UI, perfect results ordering (no cute prediction about what you might want), and, of course, truly instant results and a truly live index - it will find files created one millisecond ago.

I also use Launchy specifically for launching programs. Same instant results, though not live-indexed.

Which makes me question every single time I use the Windows default search box: How? How is one of the most fundamental features of the biggest software platform in history, made by one of the biggest companies in history, after decades, still not even close to as good as multiple basic indie replacements?

To me, when I think about how hopelessly bad popular software is (or becomes), this is the representative little example that comes to mind.


> Which makes me question every single time I use the Windows default search box: How? How is one of the most fundamental features of the biggest software platform in history, made by one of the biggest companies in history, after decades, still not even close to as good as multiple basic indie replacements?

The worse thing is that it used to work much better in the Windows 7 era. I don't know what happened there and how they justified this launch of massive quality degradation.


I think it had to do with their decision to design Windows as "app first," meaning around the assumption that everyone will be using it on a tablet or a phone.

I don't know why that specifically means search and even folders (a folder with nothing but text files will load so slowly it has a loading bar) are broken but it can't be a coincidence.


PowerToys run and FlowLauncher both have good plugins that use Everything:

https://github.com/lin-ycv/EverythingPowerToys

https://github.com/Flow-Launcher/Flow.Launcher.Plugin.Everyt...


I was typing out a comment about how integrating Everything with PowerToys Run would be amazing. Thank you for sharing this!


> "How is one of the most fundamental features of the biggest software platform in history, made by one of the biggest companies in history, after decades, still not even close to as good as multiple basic indie replacements?"

Because then people whine about monopolies and sherlocking of the indie replacements, that's why. Anybody remember this: https://www.theguardian.com/technology/2006/jun/08/adobe.sof... ?


Odd choice of example, and I really have to disagree on sherlocking.

First, why the example is odd / poor imo

Adobe trying to maintain as close to a monopoly as it can on a file format in order to have more control and (at least hoping to) generate more revenue through that control... threatening legal action to maintain their control? It's not a strong argument to say it's people being mad about microsoft's own monopolism, rather it just speaks to how corporations acting with hostility via formal legalistic channels harms attempts to use an at the time proprietary file format. It's actually in fact a counter argument to what you wrote.

As for my stronger feeling against your sherlocking point, I'd note that generally people aren't mad about sherlocking because someone else does something good and it should only ever be done once ever by one person or group in history.

Rather, such anger is usually stemming from when it's perceived as a deliberate undercutting or lazy copying. When some person or group was far more innovative or did far more difficult initial design work, only to now have been so undercut without recompense by uncaring predators lying in wait.

A great example being video game modding. People are rarely mad if one game is simply implementing its own version of a feature popular in mods or another game.

Far more often are they angry because a modder's unique and beloved system just got lifted 1:1, or clearly was irrelevant and had no reason to be added to the base game even if it's popular, and yet they're not even cited as an inspiration or hired/paid/etc. by the company that obviously felt it greatly improves the value of the game.


I read somewhere that windows search takes into account the security and other restrictions on the folders. That's why it's slow. Everything on the other hand will give you everything without caring if you have access to the file or not. Which makes sense because it's using file tables directly to give you results.

Everything + RipGrep is how i search files and file contents on windows.


This would only make sense if it isn't actually indexing the permissions, it just checks the file at the time it finds it. That would be DUMB if they did it that way. They can index that one extra field and it would still be fast.


I suspect there's more going on. Why is the search index consuming multiple GBs? And why does that seem to grow unconstrained? I can only imagine what ancient code may live in that feature.


"Everything" is great so long as you don't have too much data to index, but I've seen "Everything" also consuming multiple GB of RAM with all my drives being indexed. It can also cause some performance issues depending on what I'm doing with the system, so I only run "Everything" if and when I need it.


I have more or less the same setup and frustrations. I just have a list of things in my head (certain settings panels, calculator app) that I know neither Everything nor Launchy can find, and those are the one time that week I click the start button. Pretty sad. But really I'm happy with the other tools.


Will try "everything", the first thing i do after a fresh windos install is disable indexing. It just hammers away on the drives endlessly??? That is not what i buy disks for. I have enough [old] hdds for them to expire regularly. I expect less from newer larger drives.


> Which makes me question every single time I use the Windows default search box: How?

For better or for worse, Microsoft puts all this sort of stuff in PowerToys now. It's there for people who want it.


Not to worry, AI solves this.


Search in Windows is THE indicator of how poorly Microsoft has maintained their core operating system, IMO.

What could be more significant over the last 20 years than "search", and where does there exist a worst implementation of it in a major piece of software?

Everything really puts a spotlight on this with how simple and effective it is.


It drives me bonkers that when I hit the Windows key and type "bash", the first suggestion is always "Git Bash", which I have never used, when I truly want it to just run "bash" from WSL, which is not only a perfect text match, but actually gets used.

But not only is "bash" not the first result, it's not even the second, third, or fourth. Between the "Best match" of "Git Bash" and the actual "bash" command is 10 web search results that I have zero interest in and have never had an interest in.

I just don't get it. "bash" is an exact string match and always the result I choose. How is "Git Bash" still considered the "Best match"?


When I type in 'reboot' it gives me Reboot the movie in some online store.

They have played us for fools.


It's the opposite for me. I don't use bash.exe on my Windows machine and it is the first match when I type "bash". "Git Bash" is the second best match. I have no other results. Windows 10 Home Edition 10.0.19045.


I seriously don’t understand how searching for a file in windows takes so long and yields such crappy results? What abomination must there be under the hood for it to be this consistently bad for all of these years? Microsoft devs chime in if you have any insight.


Somehow i don't even think it is enshittification, because their search has been bad forever. On all previous versions of windows server even.

ok ok, maybe it would slow things down to index shared drives? well how do you fuck up simple search on the LOCAL computer too???? I have to use powershell to do searching "gci -recurse" is built in alias for get-childitem. And it wasn't too many more lines of code to start searching the contents of word and excel files. (although this does take a lot longer, at least it works)


WinXP Search was pretty good.


I agree that searching on Windows sucks but I guess there is a trade-off to be made. You can use very abstract APIs that will work for all kinds of file systems, whether a local disks, a DVD, a USB connected phone, or a network drive, but it will be slow and limited because you can only rely on the lowest common denominator. On the other end of the spectrum you can build highly specialized functionality that can be fast and take advantage of all the features of the target file system, maybe even accessing the medium at the block level, but it will only work for a specific target. So I can at least see how you can end up with what we have.


> On the other end of the spectrum you can build highly specialized functionality that can be fast and take advantage of all the features of the target file system, maybe even accessing the medium at the block level [...]

This is how WizTree works and why it's significantly faster than WinDirStat.

WinDirStat uses the system APIs to crawl the file system tree which results in lots of random reads and drive cache thrashing. WizTree directly reads and parses the file system data, making it an order of magnitude (Even 2+ orders of magnitude on magnetic drives!) faster. It also uncovers lots of hidden system files.


I don't get it. Everything is so good. You make it sound like this is because it doesn't cover some edge cases, but why can't the search just be about as good as Everything for everything but those edge cases?

I asked Claude why Windows just can't match Everything, and this was what it spit out:

> Microsoft faces challenges in improving Windows Search to match Everything's performance:

> Backwards compatibility: They need to maintain compatibility with older Windows versions and existing features.

> Broader scope: Windows Search is designed to search not just filenames but also file contents, emails, and other data types, making it inherently more complex.

> System integration: Changing core Windows components can have wide-ranging effects on the operating system and third-party software.


Or, you build "highly specialized functionality" for multiple media / file systems, use them accordingly, and merge the results.


At the cost of a huge increase in complexity and maintenance costs, that is the trade-off.


I remember the days when the point of tech work was to eat the complexity on your side, so your users wouldn't have to. Alas, the dominant mindset today is that "dev time is expensive", while users' lives are free to waste.


I do not disagree with you, but having the news and weather forecast in the start menu is seemingly a more important feature then having a good search functionality, what can we do? And maybe that even makes sense, maybe we are just not the target audience that brings in the money, or maybe they really just make stupid decisions, that is hard to tell from the outside in an objective manner.


Lol, Windows search doesn't suck because of the filesystems it supports. I can only assume you're a Linux or Mac user who has never used the Windows menu before, as quite literally anyone who has seen it would not come to such a conclusion. I envy you, so I will not taint your view of reality with an actual description of why it is so universally hated.


I agree that MS built-in search sucks... but so do the default MacOS and Linux search implementations.

I've said for a long time that Everything should be incorporated into core Windows, until then, at least it is available on Windows. Other OSes don't have an equivalent.


>Search in Windows is THE indicator of how poorly Microsoft has maintained their core operating system, IMO.

Upvoted.

Bing(o)!


Windows Explorer can't even sort files in a timely fashion most of the time. It's pathetic.


I've been using it for what must be over ten years and I cannot recommend it enough, especially given how poor searching for anything on Windows is now.


I don't know much about filesystems, but I have heard it said (including at least one comment in this thread) that only NTFS enables the live indexing of Everything, and that there is not an equal tool on Mac because of this. Can anybody corroborate or give details about why? APFS is a very recent filesystem, and it was designed by Apple - so if this capability really is absent, presumably that's on purpose, as a tradeoff for something.


The tradeoff is that file systems like NTFS or HFS+ (and other journaled file systems), can take up more space and incur write penalties (To file itself, to the log, metadata etc...). APFS is as you point out a newer more modern file system, that has efficient resource sharing (like copy on write) and snapshot support.

You can have a fast indexed based search on APFS, but you'll pay for it with a very large index size, which the average user doesn't want.


FSearch is a FOSS alternative for unix-like systems

https://github.com/cboxdoerfer/fsearch


If you love Everything for its speed, give WizTree (https://diskanalyzer.com) a try. It also uses the NTFS MFT and is a faster alternative to WinDirStat.


Note that while the default download is for the stable version (1.4), 1.5 alpha (which adds a lot of features) has been available since 2021 and very stable in my experience.

https://www.voidtools.com/forum/viewtopic.php?t=9787


I’ve used Everything 1.5 and Everything Server 1.5 for our small business to help our employees find files on the SMB file share since about 2022. It has been very good. People don’t have to waste time doing deep folder hierarchies. They’ve settled on “DATE Rough description” folders with a bunch of documents inside relevant to that “task”. These task folders can be forgotten, but with good folder and file naming, are easy to stumble upon later using Everything when we need info on an old task/project/etc.

The new Microsoft 365 stuff is so shiny, but the poor integration with traditional SMB shares is incredibly frustrating. We now have two split areas of documents: SMB and “The Cloud”. Nothing they offer for SharePoint/OneDrive Business/Azure gives proper integration between old and new.

Even worse, the new documents are often silo’d into specific user’s personal OneDrive which is basically undiscoverable by default. The old workflow of choosing a place to save the document early kept documents visible and rapidly shared. Now someone could be drafting a document for days before others even see it. Or they could forget to ever move it from their personal space to a team/shared space.

sigh

I’m thinking I’ll code a simple tool that creates hyperlinks to SharePoint in SMB.


Everything is peak software. Extremely fast, can be bound to a global keybind to bring up anywhere. I use it so often now that I forget to recommend it to people sometimes.


Genius UI and more than a file search. I often use it as a minimalist file manager.


I love Everything, but it might be sad commentary on the state of "modern" web and desktop UIs that a bog-standard file list now counts as "genius".


I think a lot of people in these comments are (intentionally?) missing the fact that Windows search returns the results that Microsoft prefers. It’s no secret that Windows search has been remarkably awful for a very long time. Like many features in Windows, especially within the last decade, these features are “for” Microsoft and their non-captive customers, they are not for you, the user.


You might be surprised by this but there is a non trivial contingent that believes they’re doing the best that they possibly can. You go to them and say MS search sucks and instead of ‘I know and I’m ashamed’ you just get an avalanche of documents to prove that it doesn’t suck. It’s staggering the extent that MS has been brain drained.


I used UltraSearch [1] a few times and I think it does a similar thing to Everything, access the NTFS data structures directly so that it provides essentially instant search results and directly after installation without the need to build an index first.

[1] https://www.jam-software.de/ultrasearch


Where has this been all my life? As others have mentioned, there's no bigger indictment on the bloat and degradation of quality of Windows than how criminally bad Windows Search is, to say nothing of the fact that, say, my ~1k items Downloads folder can take geological time to start showing results depending on the context.

This is truly incredible.


Is there a macOS app that works like this? Alfred has this functionality, but sometimes it fails to find files.


Doesn’t work as insanely quickly as voidtools’ Everything, but I use Thomas Tempelmann’s Find Any File as my Everything replacement on macOS:

https://findanyfile.app/


I love how you remember the authors of the tools you use.


Alfred does use its own index, instead of Spotlight’s, so it is certainly miles faster than macOS’s built in search; make sure to check what directories are being searched over in settings.


If you've never used the HTTP server, you're doing yourself a disservice.

It creates a locally hosted web page that you can use to share with everyone on the network a fast file search client.

Highly recommended! Throw in an nginx reverse proxy for https support and you are off to the races.


This is advice meant for server systems, I imagine?


I mean, if you have a windows server, that's an ideal setup, but if you just have a few computers on a network and want 1 place to go to locate all of the available files, then running it in http mode on a single PC and sharing the link around is just as good.

Prevents you from having to run it on multiple machines redundantly.


No, for sharing porn.


Directory Opus recently integrated Everything into their app. Adds some really nice functionality.


I agree with all of the comments above...


If you install the (hilariously long running) Everything beta version (latest) it features killer integration with the NTFS MFT which makes regular everything seem slow


It's funny: I cannot install Everything on my work computer, despite the fact that my productivity would easily be 3000% higher with it.


Not sure what your limitations are, but it is possible to run everything in portable mode. You just won't have the background service to maintain the index.


some endpoint protection services will block anything not signed by a trusted signature or that doesn't match an allow-list of known-good file hashes


My work had software that disables any execution of nonwhitelisted binaries.


How does it maintain the index then? Isn't using the Windows indexing service the reason it works so fast?


It reads the MFT. Then it stores its own index in a file called 'everything.db' which I am pretty sure is a sqlite file.

I don't think the windows indexing service is utilized at all.


Correct, you can turn off windows search index if you want to use everything instead.


Try the portable version. Works at my workplace


Time to find a better job


Do other file systems like Mac APFS or newer Linux ones support this functionality in principle (so that a similar tool can be created)?


Yes: you can build an index of file names on any file system.


No, it's not that simple. Everything is using native NTFS index/journal, which is behind its unique feature: real-time updates of literally everything

Other tools building an index via other methods can't do this as fast (creating the initial index and keeping it up-to-date) There is no other equivalent app outside of Windows

Thus I'm wondering whether newer FS can support this in principle, and maybe there is hope such an app can be created


In other FS/OS you'd need to use stuff like inotify/kqueue to build your own equivalent of USN Journal, but yeah.


I use Agent Ransack [1] / FileLocator to search file contents by regex very quickly, faster than grep, probably due to using multi-threading. It can even handle large binary files and displays matches conveniently.

[1] https://www.mythicsoft.com/agentransack/


One annoying thing I ran into a year or two ago is when Everything.exe is running, discord thinks it's the steam game called Everything. I had to rename the search Everything.exe to a different name to get around this.

Admittedly it's not voidtools fault, rather discords.


Why is it an issue if Discord thinks you're playing a game? Does your boss check that you're not playing games on Discord during work time or something?


> Why is it an issue if Discord thinks you're playing a game?

IIRC if discord thinks you are playing that game all the time, you can't use discord when you play actual games. Or discord may behave differently when a game is running vs. not.

> Does your boss check that you're not playing games on Discord during work time or something?

Oh no, I run discord at my home computer, and use the web interface at work ;)


> you can't use discord when you play actual games.

I think the issue specifically was wanting discord to know the game that was actually running instead of an always running other mistaken game.


Windows search already has an index and query interface for filenames built in. Why reindex?


The part of Windows Search that derives from the old Index Server product is actually pretty cool, albeit it feels over-engineered. It has an extensibility API to allow new file types to be indexed. It supports culling search results based on the permissions granted to the indexed resourced for the querying user. It supports indexing other data sources besides filesystems. It has a client/server query API. It seems pretty cool.

It's also frustratingly under-documented and, at least in my experience, suffers from poor performance. The query language is a not-quite-SQL (reminds me of WQL from WMI) and queries return very slowly. I've tried to make analytic tools for file servers using it and when I do get results they're often incomplete and/or wrong.


I've been programming since the 90s, and this is the best program I have ever used.


How come I’ve missed this for so many years? I’ve been using a really old (paid) version of Advanced Disk Catalog by Elcomsoft (yes, the forensic company) but I think it’s time for a change.


Microsoft should buy them out and add bing to get a bang for the buck. Building functional software as a ex tortion tool for intentionally dysfunctional ecosystems. 2024..


When I was at Microsoft I already knew the answer but asked around - just to be sure - and the reason is…. *drumroll* …It bypasses NTFS ACLs (because it works by indexing the raw MFT)

Microsoft sells Windows as secure/securable OS: filesystem permissions must be enforced (of course, FS ACLs are a huge part of the reason why Windows’ files-on-disk UX isn’t the best).

Yes, Microsoft could still buy it and then redistribute it as a power-toy strictly for single-user computers, but why would they do that? There’s no secret-sauce in Everything.exe - a summer intern could recreate it in a couple of weeks. Oh, and don’t forget the support costs from people who didn’t read the README and installed it on a multiuser machine and can now see the very non-Elizabethan-era file names inside innocent little Timmy’s My Documents\Homework\English\Shakespeare\ directory.


This seems like a weak excuse, the same problem exists on UNIX, but slocate solves it well enough. The slocate solution is to build the index and record permission and ownership, then it can restrict output to entries you have permission to see at query time.


That's a poor excuse:

- permissions is also something you could store in the db and hide Timmy's files

- Also, install requires admin, and admin can already see Timmy's files

> but why would they do that?

Because it's an awesome productivity app

> Oh, and don’t forget the support costs

Hard to keep in mind the legendary helpful MS self help forums costing a fortune to host!

And the "few weeks intern" is just nonsense, Everything even after many years of developments still has plenty of room to improve


Eh, it's easy to work around: run as a system service, and filter results when returning to client that queried it.

More likely they don't like it because it's clever hack and filesystem developers would be aghast at it - but hey, if it works 100x better than built-in search maybe it isn't that bad at all.


I strongly disagree. I can not envision this software being added to windows as some kind of system software without it getting messed up somewhere along the line. It is a great piece of software and does a specific job really well. Let's leave it as is.


Buy what? It's an MIT-licensed project.


they will never. windows search today is to increase bing traffic and show ads, much like the whole OS


Yeah, it has been pretty bad in win11. But at least you can disable the bing search. (For now)


bing. bang. buck. 2024?

er. heard this somewhere before. much before.

embrace. extend. extinguish. ?

https://en.m.wikipedia.org/wiki/Embrace,_extend,_and_extingu...


This was one of those must-have tools that made windows bearable back before windows 8.

Not to say it doesn't work passed windows 8, just that windows became unbearable to me.


Is there a tool similar to this one on MacOS?


It's literally the only thing from windows I miss. NTFS gives you a journal of all FS events that's virtually instant for "free" (only free as in no additional cost beyond what windows is already incurring, there's definitely overhead). In my limited research Mac APIs like FSEvents are not enough to recreate this.


This reminds me a lot of live queries in BeFS.

I like how 30+ year old NT architecture comes back again to solve things in ways that no other major OS has developed since then.


Spotlight, cmd+opt+space


Everything hooked into windows powertoys makes it even better. You can then simply search from the launcher bar.


I'm still waiting for promised long time ago mixing of files and directories in the search results..


It's perfect with the EverythingToolbar. Can't go without it



Great program. Highly recommend it.


one of the must-have things to have on every windows machine




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: