Make sure to buy bulk. Buying from a grocery store is ridiculous.
A big mistake for people who try cooking for themselves everyday is they cook a meal at a time. No one has time and energy for that. Always make a huge pot of rice and beans for the week. Then any day you can eat as it with hot sauce or do a quick fry-up with an egg or other protein or veg to vary it.
I'll add potatoes as cheap and filling. Bread bakeries have two day old loaves they have to toss out- go make them an offer.
I grow all my own food and only spend money on potato chips, ice cream, and olive oil. With most of my diet consisting of plants- potatoes, grains, beans, etc- dairy products have worked out to be my number one source of protein. I get the milk direct off a small farm for next to nothing and make cheese and yogurt from it. $3/ jug= $3 1/2 gallon of yogurt if you make it yourself. I'm not a fan of drinking a ton of straight milk as a personal note.