basic skeleton with user model