Every Bichon Friese I’ve ever met has been a lovely dog – but you have to ask yourself…”Will I be happy to walk this on my own?” 🙂
Another vote for Border Terrier here – but in a thread like this you’re possibly going to get “Oh no, don’t have one of those, have one like I have”.
Whatever you get, you have to be hard as nails on it as a puppy – especially with kids around – it’s all to easy to “spoil” a puppy, but IME, it’s when you have to be harder. You get a better grown up dog which you can then indulge without spoiling it.
And most importantly, socialise it when it’s very young – every day introduce it to other dogs, the car, people etc. This will make for an easier life, than “Sit, down, roll over, up on your back legs, etc.”