Technical Assignment
It is necessary to fix the connection functionality of Trust Wallet when accessing the landing page specifically through the link in the TikTok profile header.
Currently, the landing page and wallet connection work when opened in a regular browser, as well as through some other methods of access. The problem arises specifically in the following scenario:
TikTok → link in profile header → TikTok embedded browser → landing page → pressing the Get Your Card button → opening Trust Wallet → launching the existing WalletConnect scenario.
When opening the landing page through the link in the TikTok profile header, after pressing the Trust Wallet button, it does not open, resulting in an infinite loading screen or the button does not respond at all.
What Needs to Be Done
- Examine the current implementation of the landing page and independently determine the reason why the transition from TikTok WebView to Trust Wallet does not work.
- Fix the transition chain:
link in TikTok profile header → TikTok embedded browser → landing page → connection button → Trust Wallet app → existing connection via WalletConnect/Reown.
- After pressing the button, the Trust Wallet app must open, not:
- the official Trust Wallet website;
- the app download page;
- a list of other wallets;
- infinite loading;
- an empty intermediate page;
- a regular browser without further connection.
- After opening Trust Wallet, the same existing WalletConnect scenario that already works when opening the landing page through a regular mobile browser must be launched.
- The existing functionality of the landing page must be preserved. There is no need to redevelop WalletConnect, payment logic, transactions, smart contracts, or other parts of the project that are already present in the source files and work outside of TikTok.
- The existing logic after connecting the wallet cannot be changed or broken. The task is to fix the problematic transition from TikTok WebView to the already existing working scenario.
- The solution must work:
- on iPhone and Android;
- when transitioning specifically from the link in the TikTok profile header;
- in the TikTok embedded browser;
- on current versions of TikTok and Trust Wallet;
- without being tied to a specific phone model.
- The current operation of the landing page cannot be disrupted:
- in Safari;
- in Chrome;
- in other regular mobile browsers;
- when transitioning from Telegram;
- when transitioning from Instagram;
- when directly opening the link.
- The solution must not be rigidly tied to one domain. Domains may change, so the logic must be portable.
After uploading files to another domain, rewriting code for each new address should not be required. Only adding a new domain to Reown Project Domains is allowed if required by Reown.
- If TikTok blocks regular deep links or universal links, it is necessary to independently implement a working transition method through an appropriate combination:
- Trust Wallet links;
- WalletConnect/Reown;
- deep link or universal link;
- correct fallback;
- an intermediate page or opening in an external browser — only if it is technically impossible to ensure direct opening without this.
At the same time, the result must be user-friendly and understandable, without freezes and infinite loading.
- It is necessary to correctly handle file caching. After the regular upload of the finished archive to the hosting, the current version should open, without the need to manually explain to the user how to clear the old TikTok cache.
If necessary, versioning, cache-busting, or other correct cache handling should be added directly to the project.
- All necessary messages, fallback buttons, and instructions must be part of the finished solution. The client should not have to write code or assemble the solution from separate fragments.
Work Format
After selection, a ZIP archive of the current landing page will be provided.
Access to the TikTok account, Trust Wallet, seed phrase, private keys, and personal accounts is not provided.
If the ZIP archive is sufficient for work, the performer independently makes changes and returns the finished corrected ZIP.
If access to the server or hosting is truly necessary, it must be specifically explained before starting work:
- why it is needed;
- which files or settings will be checked;
- why this work cannot be done through the ZIP archive.
Result Verification
The performer must independently verify the complete scenario:
public TikTok profile → link in profile header → TikTok WebView → landing page → Get Your Card button → opening Trust Wallet → launching the existing WalletConnect/Reown scenario.
Verification of the link from personal messages on TikTok is not accepted, as this is a different scenario and it worked previously.
Verification only through Safari, Chrome, or a regular browser is also not considered task completion.
The performer must provide:
- the finished corrected ZIP archive;
- a link to the test stand;
- a video recording of the complete working scenario specifically through the link in the TikTok profile header;
- confirmation of verification on iOS and Android;
- a brief description of the changes made and the files that were modified.
The work is considered completed only after the entire chain specified in the technical assignment passes on the installed version.
Simply opening the landing page from TikTok is not considered a result.
Simply opening Trust Wallet without launching the existing WalletConnect scenario is also not considered a result.
Automated tests, User-Agent emulation, and checking links from personal messages do not replace actual verification through the TikTok bio link on a real device.
Important Conditions for Work Completion
Before accepting the project, please ensure that you have the necessary knowledge, experience, devices, and technical capability to independently complete and verify the specified scenario.
If you do not have a TikTok account with the ability to add a clickable link in the profile header, do not have a physical iPhone or Android device, or cannot independently verify the required chain, this must be reported before accepting the project, not after claiming the work is completed.
Please respect each other's time and do not accept the project with the expectation that the client will perform the main verification, error searching, constant installation of new archives, and recording of diagnostic videos.
Do not rely entirely on AI when completing this task. AI can only be used as an auxiliary tool. Real knowledge is required for the work:
- JavaScript;
- mobile WebView;
- deep links and universal links;
- WalletConnect/Reown;
- features of iOS and Android;
- behavior of the TikTok embedded browser;
- caching and deploying web projects.
The performer must independently analyze the code, find the cause of the problem, test the result, and be responsible for the actual functionality of the solution.
The agreed scenario cannot be replaced with a similar one. In particular, transitioning from personal messages on TikTok is not a substitute for transitioning from the link in the profile header.
Do not report that the work is completed if only part of the chain has been verified. All limitations and the inability to verify individual points must be communicated before accepting the project.
If after studying the task you understand that you technically cannot ensure the required result, please do not accept the project. This will help avoid wasting time for both parties.