client-side database & login added