You dont need to, but for organizational and true version contol purposes, its a good idea to have a different repo for each project.
Generally, one repo houses all the version control and info for one project. Say you have two projects in one repo that you’re working on at the same time. At some point, you decide to wind back the changes of one project…it will wind back all the changes for anything you’ve done in that repo…including another unrelated project.
I guess you could fix that by creating a different branch within the repo for each project, but branches are really supposed to be to keep track of additional features within a project, or for each collaborator on a project to have their work in one branch. Like, everything I can think of to house and organize several projects in one repo comes with a pitfall that would need another fix…down the rabbit hole.
Is there any reason you want to put everything in one repo instead of organize your repos by project? Repos are free…you can have as many as you like. As far as your folder structure goes, you can have one folder, with projects in sub folders, and each of those sub folders can have its own repo…thats how I have my file structure organized.