13P by neo 11일전 | favorite | 댓글 1개
  • 간단하고 빠르게 사용할 수 있도록 설계된 미니멀리스트 칸반 보드 및 작업 목록 관리 도구
  • 단일 페이지 웹 앱으로, 하나의 HTML 파일, 오래된 jQuery 패키지, 웹폰트 팩으로 구성됨
  • 완전히 오프라인으로 사용 가능하며, 이를 염두에 두고 작성됨
  • 모든 데이터는 현재 localStorage를 사용하여 로컬에 저장됨
    • 데이터는 간단한 JSON 형식의 일반 텍스트 파일로 내보내거나 가져올 수 있음
      데이터는 다음을 통해 로컬 디스크에 자동 백업 가능:
      • Nullboard Agent: Windows용 네이티브 앱
      • Nullboard Agent Express Port: express.js 기반 휴대용 앱
      • nbagent: Unix 시스템용 Python 버전

UI 및 UX

  • 사용의 편리함에 중점을 둠
  • 모든 것이 제자리에서 편집 가능하며, 모든 변경 사항은 자동으로 저장되고 50개의 수정본이 유지됨
  • 새로운 노트는 기존 노트 앞이나 뒤에 직접 추가 가능
  • 노트는 다른 목록으로도 이동 가능
  • 시각적 혼란을 최소화하기 위해 거의 모든 컨트롤이 기본적으로 숨겨짐
  • 긴 노트는 첫 줄만 표시되도록 축소 가능
  • 기본 글꼴은 Barlow로, 좁으면서도 가독성이 뛰어남
  • 노트는 다르게 보이도록 설정 가능하여 목록을 섹션으로 나누는 데 유용함
  • https:// 및 http://로 시작하는 링크는 인식되며, 마우스 호버 시 "펄스"하고 오른쪽 클릭 메뉴를 통해 열 수 있음
  • CapsLock을 누르면 모든 링크가 강조 표시되고 왼쪽 클릭 가능
  • 목록도 이동 가능하지만 노트만큼 화려하지 않음
  • 글꼴, 크기 및 줄 높이 조정 가능
  • 색상 테마 반전 가능
  • 여러 보드를 지원하며 거의 즉시 전환 가능
  • 보드당 50개의 수정본에 대한 실행 취소/다시 실행 지원(코드에서 구성 가능)
  • 노트를 탭으로 이동할 수 있는 키보드 단축키 포함

주의사항

  • 데스크톱 및 키보드/마우스 사용을 위해 작성됨
  • 모바일 장치 및 탭/터치 입력에 대해 거의 테스트되지 않음
  • Firefox에서 작동하며, Chrome에서 테스트되었고 Safari에서 작동해야 하며 Edge에서도 작동할 수 있음
  • localStorage를 사용하여 보드/목록/노트를 저장하므로 캐시를 지울 때 주의 필요

Dockerized 버전

  • 포크를 참조

배경

  • Nullboard는 ToDo 목록을 잘 처리하는 도구임
  • Trello는 나쁘지 않았지만 클라우드에 데이터를 저장하는 것이 불편했음
  • Wekan은 유망했지만 너무 무겁고 오프라인 사용 지원이나 로컬 저장 옵션이 없었음
  • Things는 아름다웠지만 적합한 도구가 아니었음
  • Inkscape는 텍스트 항목 목록으로 괜찮았지만 확장성이 부족했음
  • 종이도 거의 맞았지만 항목을 재배치하는 것이 번거로웠음
  • 결국 원하는 것을 직접 작성하게 되었고, Nullboard가 탄생함

라이선스

  • Commons Clause가 포함된 2조 BSD 라이선스
  • 판매하지 않는 한 사용, 변경 및 재배포 가능

업데이트

Hacker News 의견
  • "단일 HTML 파일"이라는 기대가 있지만, 5,000줄의 HTML 파일과 3,500줄의 JS가 포함된 것은 그 기대에 부응하지 않음. 하지만 프로젝트 자체는 멋짐
  • 노트를 편집할 때 팝업 창이나 저장 버튼 없이 텍스트만 수정할 수 있는 점이 마음에 듦
  • 단일 HTML 파일 앱 개발 시, localStorage 대신 HTML 자체를 진실의 원천으로 사용하여 사용자가 저장할 수 있도록 하는 것이 좋음
    • 이미지 갤러리를 자체 포함 HTML 파일로 만든 시도가 있었고, 개념 자체는 호평을 받음
  • Trello를 오프라인에서 사용할 수 없다는 점이 아쉬움
    • Trello 보드 JSON을 Nullboard로 변환하여 오프라인에서 작업하고, 다시 Trello로 변환하는 방법을 생각 중임
    • Trello 카드 ID를 NBX 노트 하단에 추가하고, 텍스트를 새로운 댓글로 동기화하는 방법을 고려 중임
  • TiddlyWiki와 유사한 저장 메커니즘을 가진 앱이 있으면 좋겠음
    • 자체 편집기를 포함한 문서는 오프라인 사용과 장기 저장에 유용함
  • 개발자로서 이런 설정을 충분히 활용하지 못하고 있다고 생각함
    • 간단하지만 효과적인 기기 간 동기화 방법을 찾으면 많은 사용 사례를 커버할 수 있을 것임
  • 단일 HTML 파일 프로젝트로 HTTP 비디오 플레이어를 개발 중임
    • 소스 코드를 참고하여 자신의 프로젝트에 아이디어를 적용할 계획임
  • 서버 백엔드 없이 앱 상태를 저장하고 공유할 수 있는 브라우저 솔루션이 있었으면 좋겠음
    • 데이터 유출 위험과 프라이버시 문제를 해결할 수 있는 방법이 필요함
  • Planka를 LXC 컨테이너에서 실행 중이며, 로컬 우선 GUI로 간단한 작업 관리에 유용함
    • Trello의 클라우드 저장이 바람직하지 않다는 점에서 Planka가 대안이 될 수 있음