This is an example geofilter using the existing interfaces. What is striking to me is how much boilerplate code is necessary. I have some ideas how this could be improved.
- use project templates to generate the boilerplate automatically
- store the result in
AttributeSet.data
instead of a custom model. This is a JsonField, so we can add more data without migrations. On the other hand, I am not sure if I want to encourage filter authors to meddle withAttributeSet
directly. - Do not use custom filters at all and instead provide an interface to import multipolygons as geofilters (inside polygon is a match)