원클릭으로
implementing-code
Write clean, efficient, maintainable code. Use when implementing features, writing functions, or creating new modules. Covers SOLID principles, error handling, and code organization.
메뉴
Write clean, efficient, maintainable code. Use when implementing features, writing functions, or creating new modules. Covers SOLID principles, error handling, and code organization.
SOC 직업 분류 기준
Biome 2.x linting and formatting patterns. Use when configuring code quality tools, setting up linting rules, formatting code, or integrating with CI/CD. Covers migration from ESLint/Prettier.
Hono 4.x web framework patterns. Use when building APIs, middleware, routing, or server-side applications. Covers multi-runtime support (Node, Bun, Cloudflare Workers), validation, CORS, and error handling.
Radix UI primitive patterns. Use when building accessible, unstyled UI components like dialogs, dropdowns, tooltips, tabs, and selects. Covers Tailwind styling, keyboard navigation, animations, and portal management.
React development patterns. Use when building React components, managing state, creating custom hooks, or optimizing React applications. Covers React 19 features, TypeScript integration, and composition patterns.
Tailwind CSS 4.x utility-first styling patterns. Use when building UI components, creating responsive layouts, implementing design systems, or customizing themes. Covers CSS-first configuration, @theme directive, and component patterns.
Vite 7.x build tool patterns. Use when configuring build setup, development server, environment variables, asset handling, or optimizing production builds for React applications.
| name | implementing-code |
| description | Write clean, efficient, maintainable code. Use when implementing features, writing functions, or creating new modules. Covers SOLID principles, error handling, and code organization. |
// Abstraction (Interface Segregation)
interface ILogger {
log(message: string): void;
}
interface IUserRepository {
save(user: User): Promise<void>;
}
// Domain Entity
class User {
constructor(public readonly id: string, public readonly email: string) {}
}
// Implementation (Single Responsibility)
class UserService {
constructor(
private readonly userRepository: IUserRepository,
private readonly logger: ILogger
) {}
public async registerUser(email: string): Promise<User> {
if (!email.includes('@')) {
throw new Error("Invalid email format");
}
const user = new User(crypto.randomUUID(), email);
await this.userRepository.save(user);
this.logger.log(`User registered: ${user.id}`);
return user;
}
}