당신을 적극적으로 싫어하는 Login Portal

발행: (2026년 4월 2일 오후 10:46 GMT+9)
4 분 소요
원문: Dev.to

Source: Dev.to

개요

DEV April Fools 챌린지를 위해 만든 장난스러운 “프리미엄 보안 포털”. 인증을 불가능하게 만들기 위해 의도적으로 안티‑UX 패턴을 사용하여 일반적인 접근성 및 전환 문제를 뒤집어 놓았습니다.

라이브 데모

  • Demo:
  • Source:

기술 구현

Panic Multiplier

포털은 커서와 입력 필드 중심 사이의 유클리드 거리를 계산합니다:

[ d = \sqrt{(x_2 - x_1)^2 + (y_2 - y_1)^2} ]

이 거리의 역수를 이용해 탈출 속도를 스케일링하므로, 커서가 가까워질수록 입력 필드가 더 빠르게 도망칩니다. 또한 커서 이동 속도를 고려해 더욱 급박한 탈출을 구현합니다.

UI 동작

  • Teleporting Inputs:
    입력 필드는 커서가 200 px 반경 안에 들어오면 즉시 위치를 옮겨 포커스를 방지합니다.

  • Parasitic Fields:
    사용자가 “긴급 우회”를 강제하면 이메일 필드에 타이핑할 때마다 비밀번호 필드의 문자를 실시간으로 삭제하는 스크립트가 실행됩니다.

  • Disabled Yet Styled:
    필드는 기술적으로 disabled 상태이지만 활성화된 것처럼 스타일링되어 사용자가 하드웨어, 브라우저, 혹은 자신의 정신 상태에 문제가 있다고 착각하게 합니다.

  • Glassmorphism & Animations:
    폼은 유리‑모핑 카드 효과, 선형‑그라디언트 키프레임 배경 애니메이션, 그리고 CSS ::before 가상 요소 플레어를 사용해 프리미엄 품질이라는 잘못된 인상을 줍니다.

Gemini‑Assisted Development

Google Gemini는 다음 작업에 사용되었습니다:

  • 좌절감을 주는 로직 흐름 브레인스토밍.
  • 캐릭터 삭제 스크립트를 반응적이고 자의식 있게 다듬기.
  • Panic Multiplier의 탈출‑속도 스케일링 최적화.
  • 가짜 제출 순서를 위한 풍자적인 상태 메시지 생성.

상태 메시지 (가짜 제출 순서)

✅ Asking Trump for help...
✅ Verifying database from NASA...
✅ Cross-referencing with CERN...
✅ Almost there... (it never is)

준수

이 포털은 HTCPCP(Hyper Text Coffee Pot Control Protocol, RFC 2324) 표준을 준수합니다. 푸터에는 고전적인 “418 I’m a teapot” 응답을 참조하여, 기능하지 않는 로그인 폼을 커피를 끓이는 것을 거부하는 티팟에 비유하는 유머를 담고 있습니다.

스택

  • Vanilla JavaScript
  • CSS3 (Glassmorphism 및 키프레임 애니메이션 포함)
  • Bootstrap 5
  • Google Gemini (브레인스토밍, 스크립트 정제, 메시지 생성용)
0 조회
Back to Blog

관련 글

더 보기 »

10가지 멋진 CodePen 데모 (2026년 3월)

2026 F1 Drivers Custom Select using appearance: base-select Chris Bolson은 내가 본 것 중 가장 인상적인 커스텀 셀렉트를 제작했습니다. 그것은 심지어 …처럼 보이지도 않습니다.