일기 · 130

  1. 2026
  2. 7월
  3. 07.22연못가 분수
  4. 07.21249.
  5. 07.20어디서나
  6. 07.1934만 원
  7. 07.18아무 키나 눌러
  8. 07.17EVE
  9. 07.16로열블루
  10. 07.15꺼거
  11. 07.14대필 작가
  12. 07.13반도체 타임머신
  13. 07.12폭염주의보
  14. 07.11Viva! Riviera!
  15. 07.10Z890
  16. 07.09플라잉드래곤
  17. 07.08비틀즈
  18. 07.07티비 사야것다
  19. 07.06love you
  20. 07.05미역국과 수국
  21. 07.04ver9.2
  22. 07.03대파빵
  23. 07.02100와트
  24. 07.01반환점
  25. 6월
  26. 06.30법카보다 집
  27. 06.29선풍기
  28. 06.28첫 매미 울음
  29. 06.27흔들리는 창
  30. 06.26매직 아워
  31. 06.25암흑기
  32. 06.24쿠분투
  33. 06.23뷔슈 드 노엘
  34. 06.22김치볶음밥
  35. 06.21그림자
  36. 06.200x800703EE
  37. 06.19과일 산도
  38. 06.1864개
  39. 06.17하교
  40. 06.16키 컬러
  41. 06.15통학버스
  42. 06.14일단 보류
  43. 06.13
  44. 06.12티끌
  45. 06.11아주아주아주 가볍게
  46. 06.10무지개
  47. 06.09양산
  48. 06.083285%
  49. 06.07얼굴 쿠키
  50. 06.06설거지
  51. 06.05생크림 케이크
  52. 06.042인승 로켓
  53. 06.03당도 11
  54. 06.02함부르크
  55. 06.01개망초
  56. 5월
  57. 05.31김치찜
  58. 05.306번 출구
  59. 05.29날도 좋고
  60. 05.28스마트 드링크
  61. 05.2713시 11분 원주발 청량리행
  62. 05.26파스타
  63. 05.25You've Got a Friend in Me
  64. 05.24통파인애플
  65. 05.231분 지각
  66. 05.22FORZA HORIZON
  67. 05.21고기초밥
  68. 05.20공용 우산
  69. 05.19달나라 탐험
  70. 05.18오 분이면 침대
  71. 05.17세탁 오천원 건조 오천원
  72. 05.16검은색 삼겹살
  73. 05.15달 로켓
  74. 05.14식은 피자
  75. 05.13101
  76. 05.12백 일
  77. 05.111~100
  78. 05.10라즈베리
  79. 05.09카네이션
  80. 05.08프라이팬 가득
  81. 05.07명함 한 장
  82. 05.06강아지 케이크
  83. 05.05러브크루즈
  84. 05.04파란 우주인
  85. 05.03밑 빠진 병
  86. 05.02타임머신
  87. 05.01타임머신
  88. 4월
  89. 04.30정자동
  90. 04.29호르무즈 해협
  91. 04.28웰던
  92. 04.27DOUBLE DRIP
  93. 04.26해가 길다
  94. 04.25노란 자전거
  95. 04.24필요한 것만
  96. 04.23파란 수건
  97. 04.22첫 세탁이 중요해요
  98. 04.21ITX-마음
  99. 04.20땅콩버터
  100. 04.19REBEL HEART
  101. 1월
  102. 01.15항저우
  103. 2025
  104. 10월
  105. 10.24어제까지의 이야기
  106. 10.09돈 벌기
  107. 9월
  108. 09.02PERFECT BLUE
  109. 8월
  110. 08.31코코아분말 0.9%
  111. 08.30WHAT THE
  112. 08.29문을 닫고 들어오세요
  113. 08.28하우스도르프 공간
  114. 08.27All Time Low
  115. 08.26세상의 끝을 겨눈대도
  116. 08.25앉은 자리가 꽃자리
  117. 08.246과 7 사이 자연수
  118. 08.23아직 아무 문제도 발견되지 않았습니다
  119. 08.22Adventure
  120. 08.21Adobe Creek
  121. 08.20나의 무가지보(無價之寶)
  122. 08.19T. Rex
  123. 08.18누구를 위하여 종은 울리나
  124. 08.17Sunday Morning
  125. 08.16일상의 안녕
  126. 08.15친애하는 우리의 결함에게
  127. 08.14이것이 있으므로 저것이 있다
  128. 08.13나는 나의 길을 간다
  129. 08.12Vanilla Latte
  130. 08.11그것은 하나의 가까움
  131. 08.10정복 불허의 공간에
  132. 08.09쉼 없이 수선하기
  133. 08.08나는 전설이다
  134. 08.07철판치즈버거
  135. 08.06난 포기에 소질 있음
  136. 08.05스피또런
  137. 08.04하룻밤 만에
  138. 08.03세상에 딱 하나뿐인
  139. 08.02게으름뱅이를 위한 변명
  140. 08.01북극 백화점

돈 벌기

Attendly

친구가 창업한 도자기 공방 무릇(@mooroot__)에서 사용할
출석 관리 시스템을 웹 기반으로 만들어달라는 요청을 받았다.

처음에는 “출석부만 체크하면 되는 단순한 웹페이지겠지”라고 생각했는데,
막상 작업을 시작하니 운영 효율과 사용 편의성을 동시에 잡아야 했다.

게다가 당근에서 오만원이면 구할 수 있는
구형맥에서 구동이 되어야해서
구버전의 브라우저를 지원해야하는 조건도 있었다.

공방에 음악을 틀어놓는 용도로 비치해둔
구형 아이맥으로 지금은 수기로 작성하고 있는
출석 체크 또한 하고 싶은 것이다.


친구가 원하는 화면구성을 간단히 그려서 나에게 보내주었다.

화면 구성 예시 1화면 구성 예시 2화면 구성 예시 3
화면1화면2화면3
화면 구성 예시 4화면 구성 예시 5화면 구성 예시 6
화면4화면5화면6

공방이나 학원 같은 소규모 공간은 대부분 수강생 출석과 결제 기록을 수기로 관리한다.
문제는, 그게 생각보다 굉장히 귀찮고 자주 헷갈린다는 점이다.

“이 사람 이번 달 몇 번 남았지?”
“결제는 했던가?”
“출석부 적는 거 깜빡했다…”

이런 작은 일들이 쌓이면 관리 피로도가 꽤 크다고 한다.
그래서 수강생들이 공방에 와서
직접 타이핑을 통해 출석을 하고
남은 수업 횟수까지 직접 확인 할 수 있게 만들어 달라는 요청을 받았다.


핵심 아이디어 — 셀프 체크인(Self Check-in)

Attendly는 수강생이 스스로 자신의 이름을 입력해서 출석하는 방식이다.
관리자가 한 명 한 명 체크하지 않아도 된다.

사장님은 그저 화면만 열어두면 된다.
회원이 오면 직접 이름을 입력하고,
어탠들리가 자동으로 정리해준다.


기능 요약

인터넷이 안 되어도 출석은 된다.
데이터는 오직 사장님 컴퓨터 안에만 있다.


디자인

무릇의 공간 분위기에 맞춰 전체적으로 짙은 톤의 미니멀 UI로 구성했다.
페이지마다 다른 질감의 배경 이미지를 사용하고,
모달창을 통해 출석 상황(정상, 추가 출석, 잔여 0회, 동명이인 등)을 직관적으로 구분했다.

폰트는 Noto Sans KR,
그리고 모든 버튼과 알림은 손끝의 감각이 느껴지도록 blur + shadow 중심으로 디자인했다.


기술적으로

이 방식의 장점은 배포가 필요 없다는 것.
그냥 index.html 파일을 더블 클릭하면 작동한다.
이보다 더 간단한 백오피스는 아마 없을 거다.


무릇 전용 커스터마이징

이 버전은 무릇의 실제 운영 흐름에 맞춰 커스터마이징되었다.

하지만 로고만 바꾸면 사실상 어느 공방이나 학원에서도 그대로 쓸 수 있다.
완전히 범용적인 구조다.


스크린샷

출석 메인 (index.html)

이름 입력 → 출석 처리 → 잔여 횟수 자동 차감
다양한 상황(정상, 추가 출석, 잔여 0회, 동명이인 등)에 따른 모달 예시입니다.

기본 화면플로팅 메뉴샘플데이터 경고
Main1Main2Main3
출석 확인 모달출석 완료 모달추가 출석 확인 모달
Main4Main5Main6
추가 출석 완료출석 불가 (잔여 0회)동명이인 확인 모달
Main7Main8Main9

신규 등록 (register.html)

이름, 전화번호, 초기 잔여횟수를 입력하여 회원을 등록합니다.

등록 화면등록 확인 모달등록 완료 모달
Register1Register2Register3

회원 목록 (members.html)

전체 회원 조회 및 검색, 정렬 기능을 제공합니다.

회원 목록
Members1

회원 정보 수정 (edit.html)

선택한 회원의 이름, 전화번호, 잔여횟수를 수정하거나 삭제할 수 있습니다.

회원 정보 수정 화면회원 삭제 확인 모달
Edit1Edit2

결제 정보 (payments.html)

회원별 결제 추가, 잔여횟수 갱신, 결제/출석 이력 확인이 가능합니다.

결제 검색결제 내역 입력
Pay1Pay2

출석 달력 (calendar.html)

월별 출석 현황을 한눈에 확인할 수 있는 달력형 인터페이스입니다.

월별 달력일별 출석자 목록
Calendar1Calendar2

설정 / 백업 (settings.html)

데이터 백업, 복원, 샘플 생성, 초기화 기능을 제공합니다.

데이터 관리 메뉴모든 데이터 삭제삭제 완료 모달
Settings1Settings2Settings3

마무리

어탠들리를 만들면서 처음으로 견적서를 쓰고
프리랜서로 코딩을 통해 돈을 벌어 보았다.
적지 않은 금액을 받았기 때문에 책임감이 생긴다.

댓글