@mattkw80, if you havent seen it already, I have a public git repo here, It’s probably not the greatest example of OOP, but it’s a place to start.
Hope it helps, any questions you have on it I have a post on here where I post updates I make to it here.