Generosity, or dana, is indeed one of the predominant Buddhist virtues, and it’s deep and far-reaching. Generosity is not merely about giving things. It begins with cultivating a generous nature that sees the good in others and the sources of their pain, which helps you see them as not separate from yourself.
Practically speaking, one can give three main types of gifts: material things, including money; encouragement and good wishes; and the gift of dharma, as discussed above. Seeing which of these gifts is most appropriate in each circumstance requires skill. It’s possible to engage in “idiot compassion,” giving a person something that does not help them, or may actually hurt them. Whether and how you give someone on the street money depends on your deep intentions and skillful attention to their real needs.