In the US, unpaid work is generally against the law (Fair Labor Standards Act) unless you qualify as an intern under the guidelines. I think you’ll find companies reluctant to take you on without pay because of the risks. If you can find a place that takes on interns that’s a possibility. Your university probably has an office that can help.
Early in your career you should consider focusing on getting any real-world programming experience, including learning business domains, how to participate in a team building real software, and making connections that can help you throughout your career (and whom you can help eventually). I wouldn’t focus on a language or framework, those are more alike than not and come and go over time.