It’s almost always good practice to keep client-only instances under the camera, regardless of whether filtering is being used. It maintains compatibility between FE and non-FE, even if only for debugging purposes.
Apart from that, here’s my two cents:
- Check your framework privilege. Don’t over-organize, and make sure you understand your problem thoroughly before adding another layer of abstraction to the jumble. Form follows functionality.
In fewer words, not everything has to be generic. - Don’t be afraid to illustrate what you want to do before you start writing code, especially if you’re visually-oriented like me. Whiteboards are awesome.
- I’d say something about separating server and client duties but I feel like this has already been hashed to death.