Massively filterable map markers - where do I start?

Hello! I am new at working with OpenStreetMap, and could use some advice. I have a rather large hobby project where I translate old regional German folk tales, and I want to create a map with markers showing the locations of where there tales (allegedly) took place or where they came from. In the past I have done this with Google MyMaps, but Google gives me more and more reasons not to use their products every day, so I want to use Umap instead.

But since I am redoing this map from scratch anyway, I figure I might as well do it right and add some new features. The most important use case I have is making the map filterable - particularly by their narrative tropes. For example, let’s say there is a folk tale of a dragon guarding a treasure - in this case, you should be able to filter all map markers either for ā€œdragonā€ or a ā€œtreasureā€, and in either case this marker should show up on the filtered map.

I expect there to be a massive number of filterable keywords once I have finished this - dozens, and perhaps even in the low hundreds. So, do you think this can be made to work, and if so what should I read up on?

1 Like

Sounds like a cool project.

I just gave it a quick try in umap.
It has a filter in the layering box but unfortunately it only looks for the words within the title of the objects and not in the description.

Maybe that is something, you could raise as a question for the developers: GitHub Ā· Where software is built
I have had good success with suggesting things in the past.

2 Likes

I did some further digging, and was intrigued by the assorted OpenLayers examples. This one in particular:

Filtering features with WebGL

I think it should be possible to put all the marker information into an external CSV file, and then generate a custom map that searches that CSV file for specific information, only adding markers for lines that have the relevant tags. That wouldn’t allow ā€œlife filteringā€ as such, but it would allow me to generate multiple specialized maps from one common data set.

Am I right?