Refactor handlers and OpenAPI documentation for improved readability and consistency
Some checks failed
lint / lint (push) Has been cancelled
test / unit (push) Has been cancelled
test / integration (push) Has been cancelled
lint / lint (pull_request) Failing after 6m49s
test / unit (pull_request) Successful in 16m24s
test / integration (pull_request) Failing after 17m7s

- Reorganized imports in health, notifications, social, thoughts, and users handlers for clarity.
- Updated function signatures in handlers to improve readability by aligning parameters.
- Enhanced JSON response formatting in notifications and thoughts handlers.
- Improved error handling in user-related functions.
- Refactored OpenAPI documentation to maintain consistent formatting and structure.
- Cleaned up unnecessary code and comments across various files.
- Ensured consistent use of `Arc` for shared state in AppState and WorkerHandlers.
This commit is contained in:
2026-05-14 16:28:57 +02:00
parent 004bfb427b
commit 10c4a66de5
47 changed files with 2406 additions and 723 deletions

View File

@@ -1,8 +1,8 @@
use crate::{handlers::*, openapi, state::AppState};
use axum::{
routing::{delete, get, post, put},
Router,
};
use crate::{handlers::*, openapi, state::AppState};
pub fn router() -> Router<AppState> {
let api_routes = Router::new()
@@ -16,7 +16,10 @@ pub fn router() -> Router<AppState> {
.route("/users/count", get(users::get_user_count))
.route("/users/me", get(users::get_me).patch(users::patch_profile))
.route("/users/me/top-friends", put(social::put_top_friends))
.route("/users/{username}/top-friends", get(social::get_top_friends_handler))
.route(
"/users/{username}/top-friends",
get(social::get_top_friends_handler),
)
// follows & blocks (use {id} param)
.route(
"/users/{id}/follow",
@@ -48,15 +51,30 @@ pub fn router() -> Router<AppState> {
.route("/feed", get(feed::home_feed))
.route("/feed/public", get(feed::public_feed))
.route("/search", get(feed::search_handler))
.route("/users/{username}/follower-list", get(feed::get_followers_handler))
.route("/users/{username}/following-list", get(feed::get_following_handler))
.route("/users/{username}/thoughts", get(feed::user_thoughts_handler))
.route(
"/users/{username}/follower-list",
get(feed::get_followers_handler),
)
.route(
"/users/{username}/following-list",
get(feed::get_following_handler),
)
.route(
"/users/{username}/thoughts",
get(feed::user_thoughts_handler),
)
.route("/tags/popular", get(feed::get_popular_tags))
.route("/tags/{name}", get(feed::tag_thoughts_handler))
// notifications
.route("/notifications", get(notifications::list_notifications))
.route("/notifications/read-all", post(notifications::mark_all_read))
.route("/notifications/{id}/read", post(notifications::mark_notification_read))
.route(
"/notifications/read-all",
post(notifications::mark_all_read),
)
.route(
"/notifications/{id}/read",
post(notifications::mark_notification_read),
)
// api keys
.route(
"/api-keys",