feat: initialize thoughts-frontend with Next.js, TypeScript, and ESLint

- Add ESLint configuration for Next.js and TypeScript support.
- Create Next.js configuration file with standalone output option.
- Initialize package.json with scripts for development, build, and linting.
- Set up PostCSS configuration for Tailwind CSS.
- Add SVG assets for UI components.
- Create TypeScript configuration for strict type checking and module resolution.
This commit is contained in:
2025-09-05 17:14:45 +02:00
parent 6bd06ff2c8
commit e5747eaaf3
104 changed files with 7484 additions and 0 deletions

View File

@@ -0,0 +1,32 @@
use serde::Serialize;
use utoipa::ToSchema;
use crate::domains::user;
#[derive(Serialize, ToSchema)]
pub struct UserSchema {
pub id: u32,
pub username: String,
}
impl From<user::Model> for UserSchema {
fn from(user: user::Model) -> Self {
Self {
id: user.id as u32,
username: user.username,
}
}
}
#[derive(Serialize, ToSchema)]
pub struct UserListSchema {
pub users: Vec<UserSchema>,
}
impl From<Vec<user::Model>> for UserListSchema {
fn from(users: Vec<user::Model>) -> Self {
Self {
users: users.into_iter().map(UserSchema::from).collect(),
}
}
}