GM frens 👋 and welcome to the inaugural newsletter for our developer audience. In this post, we cover what’s new, what’s been fixed, and use cases from our community. We look forward to hearing from you!
Infinite Loop Glitch in the UI 👾
We fixed a bug that occurred when users first uploaded ABI files and then connected a chain, which caused the UI to enter a glitchy loop:
The front-end catches this flow and guides the user to connect a local chain or connect via MetaMask. This fix also solved the large number of getBalance() requests.
Better Error Messaging via Console.Logs 👾
Users asked for improved browser console.logs to understand errors. We added that in our most recent release:
We also provide in-browser instructions if you prefer to connect with MetaMask:
Sync Directory is Faster 👾
We got feedback that our Sync Directory feature was too slow, which occurred because the web app polled (most) files in the sync’ed directory to determine if each file contained ABIs and addresses. We drastically improved this feature, especially for users on Foundry. If you tried this before, we suggest giving it another whirl.
Note, the principle use case for uploading an entire directory is limited to scenarios where you have many local contracts that you want to import into Sidekik. If you’re interested in exploring one or a few contracts from your local environment, we strongly recommend using a JSON file and uploading it using the “Sync File(s)” button. Regardless, you must identify each contract address and its ABI. There are three ways to do this:
1. You output a JSON file during your compile process that saves the deployed addresses and ABI to a local file. [Strongly Recommended 💪]
2. You point Sidekik to a directory to identify all ABIs (and addresses if you are storing them to a file).
3. You manually enter a contract addresses and ABI in the input box.
The third method is useful for contracts that are deployed to a chain. In a dev environment, that’s not the best way because addresses may change every time you deploy contracts.
For step-by-step instructions, along with a how-to video, go here: https://docs.brandweaver.ai/setup/overview/setting-up-contracts-with-sidekik
Now Supporting Overloaded Functions 🆕 🎉
Thanks to feedback from @ChiliPaneer, we’ve added support for overloaded functions. As a reminder, overloading a function means that you can create a function that has the same name but different arguments and/or types. This is seen as three separate function calls in Sidekik, each with different input parameters:
Use Case: Exploring Hypotheses 🗺 🧐
Maybe you’ve heard that having more zeroes in a wallet address can save on gas fees. In this short video, Sandeep investigates this claim using Sidekik. Too-long-didn’t-watch (TLDW): Sandeep loads up the DAI contract and then impersonates a whale’s address. In one path, he transfers DAI to a typical wallet address and then measures the amount of gas it took. In a second path, he transfers DAI to an impersonated wallet address that is full of zeroes and measures its gas. After comparing the gas usage, he concludes that, yes, having more zeroes in your wallet address can result in gas savings! Watch the video for more details.
That’s it for now! Send us a note if you have any questions. And if you’ve had a chance to play with Sidekik, we’d love to hear from you!