version 1 : just JS proxy