Nice and interesting, well done! I also like the offline caching feature.
The only tiny imperfection I see it's in the lines connecting two countries, I'd like to see an arrow so I know if I'm looking at arrivals or departures.
Is there a way to filter the GMO database to see only the current migration flow (say, last 5 years)?
Another imperfection to this otherwise interesting tool: it is hard if not impossible to click on small countries or islands. Good luck if you want to know who goes to Guadeloupe. Pascali Islands are hidden by the legend if I'm not mistaking. This is inherent to any "click a country on the world map" tool. A complex and not perfect way to fix it would be to allow zooming, but here I would add a drop-down with a list of countries.
I have tried to add arrows at some point, but it cluttered the visualization too much (especially for countries where migrations are quite local : limited to border-sharing countries).
That said, there may be a solution I did not think about.
You could over impose three dotted lines with a different color/dot-spacing to each connecting line, then set a timeout and alternate their visibility accordingly, so you can get a "dots flowing inside the line" effect. Not sure if this can work with canvas though.
How about drawing the arrowhead on the middle of the line? (And not drawing it on short lines. The arrowheads on the long lines will reveal whether 'departures' or 'arrivals' are depicted)
The only tiny imperfection I see it's in the lines connecting two countries, I'd like to see an arrow so I know if I'm looking at arrivals or departures.
Is there a way to filter the GMO database to see only the current migration flow (say, last 5 years)?