I have made filters for several outdoor ponds and for a mushroom operation that required water recycling, never for small fishtanks, but the principles must be the same, and mushrooms are a lot more demanding than most tropical fish in regards to water quality.
First you need a mechanical filter to trap suspended particles. It is better if you layer materials from coarser to finer. A big particle will clog just one pore of your coarse media, but thousands of pores in your fine media.
Then you need a material with a very large surface area for bacteria to live on, that allows good water flow with no 'dead' spots. Some bacteria will colonize your mechanical filtration media, but since you will clean this often, you must not depend on this bacteria.
For mechanical media I have used , in decreasing coarsness, construction gravel, wire mesh, mosquito netting, the plastic mesh used for cheese making, nylon scrubber pads, filter floss (pillow filling), open cell foam, specialized filter foam, all the way to high efficiency ceramic filters. The finer the media, the stronger a pump you will need. I try to use locally available materials.
For bio media, anything with a large surface area that the bacteria will not eat is OK. I have used volcanic rock, shredded plastic bottles, the plastic pellets used to make plastic bottles, all kinds of 'bio balls' (assorted pieces of plastic with strange shapes that allow for extended surface area and good flow. The best I ver used were surplus parts from a chicken feeding rig), pieces of broken ceramic and food safe clay and pottery, gravel, and a cloged waterproof HEPA filter cut to pieces.
You need surface area, water flow, and as much oxygen as you can get in there. Use your imagination.
I went to a fish farm in Colima where they use beautifully landscaped waterfalls as biomedia. They pump the water to huge bins filled with mechanical media in layers. The water flows through the media by the force of gravity, exits the bins and flows to the top of an artificial waterfall made with volcanic rock and concrete. The water flows and jumps and is very bubbly and fresh, and the rocks are all covered in slime.
Form there the water flows back to the concrete fish ponds. The guppies living in the pond at the base of the waterfall, for mosquito control, look really healthy. I would love to recreate these in a smaller scale for a fishtank-terrarium.