This is actually pretty easy to do using Responsive UI. A couple of the local pool leagues use a site that is responsive so that even the league admins can enter the scoresheets on their phones. One set of pages simply changes the visual representation base on viewport size and browser capabilities. It has been fairly well received by players. You definitely want to take advantage of lots of built-in caching to make it faster but thats easy to do too.
You can use bootstrap or any number of other frameworks to make responsive sites easy to maintain and get up and running fast. You can do quite a bit with jquery too so things that you may think of as mobile app features like location awareness, swipe gestures, etc. would still work.
Another option is using something like Xamarin where you code for one app and simply compile it for other frameworks. The dev licenses are a little pricy up front but then you'd have one codebase for your entire app.
Let me know if you have more questions about this. I may be a C player in pool but I'm a professional in this world.