I want to post my first project but to make the itch page look good i need to make a game icon and banners and backgrounds and all that stuff. I was wondering what is the best app to make them and how to make them?
Gimp is your friend here- despite the horrendous title! It's a free and very powerful Photoshop-style program that's good for most things you'll come up against- unless you need vector graphics for anything, in which case Inkscape is worth a look.
First of all, record the dimensions you need of the banner or whatever and make a new document using those. After that, well, there's a ton of stuff you can do but fortunately there's no shortage of tutorials on Youtube and elsewhere. As general advice, always work in layers (because you don't want to redo the thing from scratch if you make one mistake), save most things as png format but also to Gimp's native .xcf format in case you want to edit later, and learn how transparency works if this is new to you.
I've found that a reasonable knowledge of graphic design is invaluable to a dev promoting their work and if you have any specific questions, feel free to post :)