same here. All logic move to `lib` or `services`