When developing this solution, we were guided by the following principles
● maximum user convenience
● intuitive interface, which not overloaded with information not related to a specific
● communication occurs only between the user and the blockchain
We managed to create an interface that is complete. complies with these principles. Only user and blockchain. No additional requests other than blockchain requests. Nothing is cached or saved, while the speed of work remains at the proper level.
Loading the client, the first block, and one request to graphql for each individual contest is the key to speed and transparency.
The solution can be downloaded and run on a local browser with two commands and not even go to the existing site, which allows it to be maximally autonomous and secure.
For development, we used "@tonclient/core": "^1.10.2" to work with the blockchain and "@angular/core": "~ 11.2.4" to write the interface.
Run the solution locally is simple:
● install node.js
● install angular npm install -g @ angular/cli
● run the application in the root of the repository - ng serve
● the application is running on port 4200