auto id assignment without any backend