I know we can have
raspbian connect to local wifi if we copy
wpa_supplicant file to location were boot.txt is in sd card, and even enable ssh by copying ssh file to the same location, but how can we also assign a static ip at the inital boot?
There is no simple way to configure a static ip address at the first initial boot after flashing Raspbian to the SD Card. You have to boot at least one time, login and configure the static ip address.
On the first boot there is a script running that expands the root partition to the size of the SD Card and do other essential initialization things. You will find the call of the script with
boot/cmdline.txt at the end of the line but only if you don't have booted the fresh flashed image. After the first boot the entry is removed. You may try to modify this script to setup a static ip address, but as already said: it isn't an easy task. You may have a look at Use /boot/cmdline.txt for creating first-boot script about your problem. There are also some links to github projects which address your problem.