from fastapi import APIRouter, Depends, HTTPException from core.database import fake_users_db router = APIRouter() @router.get("/users") async def get_users_handler(): """Get all users""" users = list(fake_users_db.values()) return { "message": "Users retrieved successfully", "data": users, "metadata": { "source": "demo_db", "result_count": len(users) } } @router.post("/users") async def create_user_handler( username: str, email: str, password: str ): """Create a new user""" if username in fake_users_db: raise HTTPException(status_code=400, detail="Username already exists") import uuid user_id = str(uuid.uuid4()) new_user = { "id": user_id, "username": username, "email": email, "password": password, "disabled": False } fake_users_db[username] = new_user return { "message": "User created successfully", "data": new_user, "next_steps": [ "Verify your email (demo)", "Complete profile setup" ] }