Building the desktop app and implementing an end-to-end flow