To answer the question, yes. You should be able to walk back into a job after a 3 year break.
The development industry is fast moving, but not in the way everyone is suggesting. New tools are released all the time, but the way we build software rarely changes.
A lot of tech companies have old tech stacks. They don't update for the fun of it, or when something new comes out. In 3 years, most established companies today will still be using the same frameworks and libraries.
After 3 years, it will only take you about a month to get back up to speed. Maybe allow 6 months to get a job. - just because it's harder to get a job if you don't currently have one, and after 3 years off you will need time to adjust.
You don't even have to let anyone know you took a 3 year break.
On*On your resume you don't have to list specific years... you can just list the number of years you were in your lastprevious positions.
- Update Following Comments -
*I am assuming US/UK. I know several devs in both countries that do this without problems.
However, I would suggest something else for your resume. I don't see this as a '3 year break'. You are travelling, contributing to Open Source, and doing volunteer work for a charity.
I see nothing wrong with listing that as: 'Open Source / Freelance Developer' and then explain about the work you did in that period. No need for a gap in your resume, no need to call it a 'break', and it's up to you if you mention you did it while travelling.