I know there is a lot of guides out there for this, but this is the only kind like this. It is fairly simple, and doesn’t take long! But, warning; This guide includes simple block code and only takes up around 0.004 of your memory.
First, add water as the terrain, to make a pond at whatever size you wish.Then place a button. Change the button to not be visible. Then, change the message the button says to Fish? Place five item granters near the pond. Make sure that they show these 5 different types of fish shown in the picture below.
On the blue fish granter, go to blocks and create an on wire pulse block. Then, create a variable and name it Number Blue. Have Number Blue be set to a random variable between 1 and 10. Finally, place a block that says if Number Blue is at or less than 1, grant player selected item, and have the amount be 1. Do the other 4 item granters the same way, but edit the amount the variable has to be to grant that specific item to increase the rarity of those fish appearing.
Final step! Add wires that all connect on one end to the button, and the other ends to the specific item granter. The wire setting is when the button is pressed, run wire pulse block. Make sure that the button and the item granters are not visible in game. You may have to change the size of the button to fit around the size of your pond. You should now have a complete fishing system when you press the button. (which should be usable when you get to the edge of the water.) If this helped, a would be appreciated.