these are two Algorand Smart Contracts. Algorand Application can store state data. Application transactions are not able to send assets. That’s why the author, Vilijan Monev choose to use two smart contracts to handle the Algorand and ASA (Algorand Smart Asset). He uses transaction groups, and the App can enable or disable the execution of the group as a whole.
who will hold the asa in starting of application??
The asa_delegate_authority, see section “Initialization of application”
who will start the first bidding ??
See section “First bidding for the ASA”
For the general flow, see main.py
This example is not a complete web app. It shows the concepts and the steps necessary to make a web app.