use crate::errors::AppError; use crate::models::user::{User, UserCreate, UserList}; use axum::{routing::get, Json, Router}; pub fn create_route() -> Router { Router::new().route("/", get(list_users).post(create_user)) } async fn list_users() -> Result>, AppError> { let users = User::list().await?; Ok(Json(users)) } async fn create_user(Json(payload): Json) -> Result, AppError> { let user = User::new(payload.email, payload.password); let user_new = User::create(user).await?; Ok(Json(user_new)) }