Also since the migration effort might take some time to complete, we will also need to keep supporting the existing legacy application in the meantime.
I take it from this statement that the new development will be done in parallel with the existing application, rather than replacing components one at at time. My answer will reflect this.
Use what you have now as a guide
The existing system can be analysed to produce a feature list for the new application. It will also be useful to think about the relative value of the features in the existing system. For example, which is the most important feature? Which features are nice to have and the users could do without (perhaps just temporarily)?
Now turn this analysis into a prioritised backlog of work. The most important mandatory features will be at the top of the backlog.
Secondly, consider producing a suite of (ideally automated) regression tests for the most important features. These tests can be run against the existing system and show to work. The intention will be that the tests operate at the UI layer and so can be run against the legacy system or the replacement system.
These regression tests will help the development team work with confidence while they progress along the learning curve of the new technology.
Build the support of the stakeholders by delivering incrementally
The stakeholders will often get nervous if the new development absorbs resources while showing no results. As you have a prioritised list of features, try to deliver working software at regular increments. For example, perhaps the first working release will include just the top 5 features of the application.
Work with just one backlog
It is a good idea to combine the work on the new application with any work required to maintain the existing, legacy system.
Have just one backlog and prioritise maintenance tasks alongside new development items. It may be that some maintenance tasks are not all that urgent and can be prioritised below new development tasks. Your backlog might look like:
Fix legacy bug #7
Generate quarterly report from legacy system
Feature #2 on new system
Feature #8 on new system
Fix legacy bug #12
Consider a staged switchover
If possible, try and avoid a big bang style switchover to the new system. Can you run the new application in parallel with the legacy system? Could it be run as a beta with a subset of your users?
If you deliver the new application incrementally and run in parallel then you can greatly reduce the risk associated with the switchover.