Well you have two options here.
Either make an API from your application where your app and your front-end will use the API. The front-end then needs to be build using a front-end framework.
Another option is using two different ways of serving the content. For example create an API for the app and use normal controllers and views for your website. You can use design patterns like repositories to make sure you don't have duplicated code everywhere.
Both options are fine as well ;)