donate (something) to a homeless shelter
A "homeless shelter" is a place where homeless people can come to get food, a place to sleep, and sometimes other services like showers, counseling, and medical care. Homeless shelters are usually run by charities, churches, volunteer organizations, etc.
"Donating" something to a homeless shelter means giving the organization money, food, or other things to help them out. You can also "donate your time".