Firstly, to complete this, you would need to run your own server of some form to store access tokens, etc…
You can do this in a few ways, if you don’t need a ‘view’, you can do this using an integration. As part of the integration, you can use an authorisation URL which will allow you to gain the users authorisation and connect it to your 3rd party app. Check out this article here -> https://monday.com/developers/apps/integration-authorization/ As part of your callback, you would need to authorise both monday.com AND your 3rd party app.
If you need a view, then you would still need to implement an authorisation process, but you would need to create a lot of this yourself. You could do this via running a custom URL, or uploading the build file, it won’t make a difference to your code (except maintaining your own server to power the view).
When I have implemented this using a view (using React), I have used either the constructor method or CompomentWillMount function to check to see if the user is authorised, if not, guide them through the authorisation process.
Hopefully, this will help you, let me know if you have any more questions.