Try the Firmware Mod Kit. This open, community project now supports more firmware types than ever, and can do more than ever.
First, Bitsum Technologies and/or Jeremy Collake is not a developer of DD-WRT. We have nothing to do with DD-WRT, at all. Some of our technology is used along with DD-WRT, that is our only linkage. Specifically, I am referring to the 'VxWorks Killer' technology used to flash certain WRT54G routers without requiring hardware modifications.
Second, we do not advocate for or against DD-WRT. For some people, it may be just the right firmware. We have no problem with DD-WRT, nor do we promote it either though.
Third-party firmwares arose from the use of open source by chipset and hardware (e.g. router) manufacturers. Since the licensing requires them to provide the source code to anyone who requests it, they (the manufacturers) have done so on several different occasions. It is virtually always an embedded linux distribution that we are speaking of.
Since the source code became available, it became possible to extend the capabilities of the routers. The first such project for the WRT54G (and similar) routers was from Sveasoft. This whole concept proved surprisingly popular. As is usual, with popularity comes commercialization. Sveasoft became highly commercialized in time, leading to a 'branch'.
BrainSlayer took the SveaSoft sources, combined with other work from the OpenWrt project, and formulated DD-WRT. He added many of his own scripts and web UI enhancements, as well as package additions (or deletions as in the case of the micro edition). How commercialized DD-WRT now is or isn't, I'll let the reader judge.
Another alternate firmware that has diverged considerably from the main sources is Tomato, a branch of HyperWRT (which was another branch of Sveasoft's original modified firmware). Tomato is more free than DD-WRT at this point, depending on your platform. It has many advantages, though surely some disadvantages too. It is wroth trying.
You will OFTEN hear about OpenWrt when researching aftermarket firmwares for these routers. OpenWrt went a different route than the other projects. They decided they wanted to create a framework for device manufacturers (or third-party firmware developers) to develop from. In essence, they created the perfect template for an embedded linux OS, specifically targeted towards wireless routers. It comes with a full featured command line interface (SSH only, telnetd disabled because it is insecure).
As these projects advanced, Linksys came out with a new model of the WRT54G (v5) and WRT54GS that had less ROM and RAM, and ran VxWorks instead of linux. Therefore, it was incompatible with the previous method of flashing an alternate firmware onto the device. I did work that allowed flashing of stripped down linux firmwares onto these routers. That project was extensive, and took months of time to polish so that end users could easily utilize it. For info, see Flashing a WRT54G/GS v5/v6 without hardware modifications. To Linksys's credit, they continued offering the WRT54GL, which still ran a linux firmware and had more ROM/RAM, making it compatible with aftermarket firmwares off the shelf.
Knowing that OpenWrt had developed the best router firmware, but needing a capable web management interface, I decided (along with a guy of with the alias ThePeople), to found the X-Wrt (webif^2) project. This was a project to put the end user touches on OpenWrt, giving it an easy to use and fully capable web interface, amongst other things. Thanks to contributions from lots of developers, it thrived. It is particularly effective on the older OpenWrt White Russian distribution. The newer OpenWrt Kamikaze distribution adopted an alternate web interface subsystem, and the X-Wrt (webif^2) package is not as polished for it (last time I checked, I've been inactive for some time).
As mentioned, the new version of OpenWrt is Kamikaze, but it will be of little use to those without decent linux knowledge, or time to learn. For those wanting something that 'just works' and has a simplified user interface, X-Wrt (based on OpenWrt White Russian), Tomato, or DD-WRT are probably for you. Again, OpenWrt is a great base platform, but not intended for end consumer use without extensions.
The decision as to which firmware to use depends on your hardware type, your needs, and maybe even your ideology (speaking of potential GPL violations by some projects). However, I caution that you really shouldn't use ANY third party firmware unless you need to. I've seen many cases where third-party firmwares have bugs or other problems not present in the manufacturer's firmware (and also vice-versa, of course).
Sadly, DD-WRT has chosen to package it's HTTPD (the web management console) in such a way as to try to prevent or deter changing in any way. Yes, odd for a F/OSS project, but in line with their usual practices, in my opinion.
The tool used by DD-WRT to protect its HTTPD is called webcomp, written by a third-party licensed under the GPL. The HTTPD of DD-WRT is, of course, also built upon the work of others (Sveasoft, Linksys, Broadcom, etc..) and therefore subject to GPL licensing. The source code to BOTH should be made available to anyone who requests it. The attempt to suddenly change the license type of pre-existing code you've made a few modifications to is simply not legal. Keep in mind that no matter what anyone tells you, DD-WRT is 99% the linux kernel and BusyBox. The rest of DD-WRT is a collection of scripts and the web UI, which themselves are built upon the work of others.
Are there GPL violations? You tell me. I'm no lawyer. Beats me. I have no problem with DD-WRT making money. But, if you ask for their modifications to webcomp, will you get them? If you ask for their custom HTTPD source, will you get it? These are questions I've not asked, so don't know the answer.
Although DD-WRT is a fine firmware for most, there are other options. This list is specific to the WRT54GL (and similar) series, as that is what I know best -- but most of these do support other routers. Version 5, which was famously 'freed' here at Bitsum (see the original copy of my research and tools), is not supported as its RAM and ROM are so limited that only sparse and firmwares hyper-optimized for size will work. In this case, only DD-WRT micro is known to be an option. For other platforms, you are on your own.
DD-WRT is a third-party partially open source firmware for the WRT54G and other routers. This site has no affiliation with them, but did do the work necessary to allow DD-WRT micro to be flashed onto newer generations of WRT54G routers without hardware modifications. Further, we developed an easy way to modify their firmware images by extracting, then recombining them, via our Firmware Mod Kit. We've also done other embedded linux and aftermarket firmware work, but it is not related to DD-WRT.
Also note that although I use the terms 'us' and 'we', really there is just me.
I had criticized DD-WRT because he was 'going commercial' and was protecting his modifications from public view and edits (e.g. the web UI). So, I criticized him. I later removed them when DD-WRT went full-blown commercial, as I predicted. Sadly, he still maintains a BLOG that mentions me. You'll notice he thanks me for my contributions, just mentions a disagreement. It is unfortunate that he chose to bring my real name into it, as I simply referred to him by alias. Anyway, that is all water under the bridge. I hope he is able to profit from his hard work.