Files
web-utils/PROJECT_RULES.md
2026-01-28 15:33:47 +09:00

1.3 KiB

Project Rules & Guidelines

1. Client-Side First Policy (Privacy & Security)

  • Generators & Simple Utilities:
    • Logic for generating data (e.g., passwords, UUIDs, random strings) or processing simple text (e.g., JSON formatting, URL encoding) MUST be implemented on the Client-side (Frontend) whenever possible.
    • Reason: To protect user privacy, prevent sensitive data (like passwords) from ever touching the network/server, and improve responsiveness.
    • Exception: Operations requiring heavy computation (e.g., Image/Video processing) or specific server-side libraries (e.g., specific Python ecosystem tools not available in JS) may use the Backend.

2. Server-Side Data Handling

  • Statelessness: The server should remain stateless.
  • Temporary Files: If file upload is necessary for processing (e.g., Image Compression), files must be stored in a dedicated temporary directory (backend/temp_uploads) and automatically cleaned up after a short period (e.g., 10 minutes) or immediately after processing/download.

3. UI/UX

  • Navigation: Use the Global Navigation Bar (GNB) for main navigation. Avoid complex sidebars (LNB) for simple utility sites.
  • Feedback: Always provide visual feedback for actions (loading states, success/error messages).