prototype with user auth setup