Categories
Crypto hardhat

How to use ethers-multicall on a local hardhat node

ethers-multicall actually uses MakerDAO multicall contracts for multicall functionality. On a local chain this contract is not deployed, therefore the request fails with To fix this issue, the MakerDAO-s multicall contract needs to be deployed on the local node. Copy the Multicall.sol contract to your local project. The contract is available in MakerDAO repository Add […]

Categories
typescript Uncategorized

vscode-jest doesn’t work for a react app in a yarn workspace/monorepo

I have created a simple yarn workspace with a single package. This package is the default CRA Typescript app. Repository code is on Github. In this repo: Jest works in command line (yarn workspace frontend test) Jest doesn’t work when clicking the button in vscode or on startup. Tests fail with: I can fix the […]

Categories
Uncategorized

How to transfer a DynamoDB table from one account to another?

This can be done with AWS Glue and IAM roles. Let’s assume we are transferring from account A to account B. Define a role in A to add B as trusted entity to read from DynamoDB. Create the role for AWS account, Another AWS account, and use the account B id. Result is similar to […]

Categories
Android Apps Kotlin

Location data reduction in Android

Android LocationManager allows fine location data updates with customisable interval. This means the phone could return new coordinates even after every 100ms. If the app would then upload all of these points, it would result in expensive data and battery usage. Can this location data be reduced before sending it to the server? Problem Android […]

Categories
Notion Python

Add text and images to Notion via the official API and Python

Notion has recently released the official API. With some restrictions, it allows coders to add, update and delete blocks from their pages. There is an official JavaScript client, but nothing for Python. This post describes how to update Notion pages with Python. It will use REST requests to call the API. Prepare a page with […]

Categories
Automations Crypto Python

Aggregate Iconomi crypto strategy details

Choosing crypto currencies to invest in can be a puzzling task. Investor can look at graphs, news or read expert opinions on Twitter. A popular vehicle for delegating investing decisions is Iconomi, where people have a choice of hundreds of investment strategies. A good indicator of the total market sentiment would be the average weight […]

Categories
Android Apps Architecture Jetpack Compose Kotlin

Create a login screen with Jetpack Compose

In a previous post I described how to create a Github Repository browser app. The UI in that app was written using XML layouts(imperative UI). In the recent years developers have been finding it easier to define and update the views using the declarative UI paradigm. This leads to Google releasing Jetpack Compose 1.0 in […]

Categories
Compose for Desktop Kotlin Kotlin Multiplatform

Create a code editor with Compose for Desktop

Compose desktop is an upcoming cross-platform framework that promises the building of apps from a single codebase to every desktop and web platform. Since Kotlin Multiplatform is gaining traction, a cross-platform UI framework on top of it seems like a logical step forward. There are tutorials and examples about creating simple widgets and layouts, but […]

Categories
Automations MacOS Uncategorized

Setup MacOS system-wide Vim mode

I got interested in workflow automations a while ago. With that came the understanding of Karabiner, which allows the remapping of keyboard keystrokes. Besides this I understood the benefits of using Vim: It is fast and can be used in most Unix distributions. As a result of these concepts arose the idea of a system-wide […]

Categories
Kotlin Kotlin Multiplatform MacOS

Kotlin native interoperability with Swift/Objective-C.

Under the Kotlin Native umbrella lie many platforms, like Linux, Windows, or even the Android NDK. Of course it is also available for Apple platforms, which run on Objective-C. How is this interoperability be implemented? Call Swift/Objective-C functions from Kotlin There are 2 options to call native functions from Kotlin: Create a Kotlin function with […]