TinyLink is a holistic system for rapid development of IoT applications. Developers write the application code in C-like language to specify the key logic of their applications, without dealing with the details of hardware components. Taking the application code as input, TinyLink automatically generates hardware configurations as well as the hardware dependent code executable on the targeted hardware platform. We have further extended our system to integrate cloud, device and client development in one piece of code, greatly accelerating the process for cloud-device integrated applications development. The designs and implementations have been published in ACM MobiCom 2017 and ACM MobiCom 2020.