본문으로 건너뛰기
피드

옵시디언 대안 노리는 오픈소스 노트 앱, Files.md

open-source 약 6분
vote
0
댓글
북마크

Files.md는 로컬 Markdown 파일을 중심에 둔 오픈소스 노트 앱이다. 브라우저만 있으면 설치 없이 쓰고, 오프라인 동작과 선택적 동기화, Telegram 봇 입력, LLM 친화적 파일 구조를 내세운다.

  • 1

    모든 데이터는 plain .md 파일로 저장되고 기본 모드는 local-first라 서버로 전송되지 않음

  • 2

    앱은 PWA 형태이며 빌드 시스템 없이 web/index.html을 열어 동작하는 구조를 지향함

  • 3

    동기화는 로컬 폴더, 클라우드 폴더, 셀프호스팅 Go 서버, 호스팅 서버 중 선택 가능

  • 4

    개발 철학은 기능 추가보다 단순성 유지에 가깝고, LLM이 코드베이스 전체를 이해할 수 있을 정도의 작은 구조를 목표로 함

  • Files.md는 ‘또 하나의 노트 앱’이긴 한데, 방향이 꽤 선명함 — Obsidian류의 복잡한 PKM 시스템보다 plain .md 파일과 로컬 소유권에 올인하는 쪽임

    • 노트, 문서, 프로젝트, 저널, 습관, 체크리스트, 태스크를 전부 Markdown 파일로 저장함
    • 기본값은 local-first라 파일이 기기 밖으로 나가지 않음
    • 작성자는 이 프로젝트를 5년 동안 만들었다고 밝힘
  • 설치 경험도 일부러 단순하게 잡았음

    • 브라우저에서 app.files.md를 열고 Chrome 기준 주소창의 설치 버튼을 누르면 됨
    • 변경사항을 영구 저장하려면 로컬 폴더를 열어 연결하는 방식
    • 업데이트가 필요하면 가끔 강제 새로고침을 하라고 안내함
  • 동기화 옵션은 꽤 현실적으로 나뉘어 있음

    • 완전 로컬 모드는 기기 안의 폴더에만 저장되고 서버가 필요 없음
    • iCloud, Dropbox, Google Drive 같은 클라우드 폴더를 쓰면 별도 서버 없이 여러 기기에서 동기화 가능함
    • 셀프호스팅은 Go 바이너리 하나로 서버를 띄우는 구조
    • 관리형 서버는 api.files.md를 통해 바로 써보는 선택지로 제공됨

중요

> 이 프로젝트의 포인트는 “노트 앱 기능이 많다”가 아니라 “내 데이터와 그 데이터를 여는 소프트웨어를 같이 소유한다”에 가까움.

  • 흥미로운 건 LLM 친화성을 제품 기능이 아니라 구조 철학으로 밀고 있다는 점임

    • 코드베이스가 한 사람이나 LLM이 머릿속에 넣을 수 있을 정도로 단순해야 한다고 말함
    • 빌드 시스템 없이 web/index.html을 여는 방식으로도 돌아가게 하려는 목표가 있음
    • 파일 구조는 Chat.md, journal/YYYY.MM Month.md, Later.md, habits/*.md, media/*, config.json처럼 명확하게 정해져 있음
    • 이 구조를 CLAUDE.mdAGENTS.md에 넣으면 AI 에이전트가 파일 체계를 이해할 수 있다고 설명함
  • Telegram 봇을 ‘쓰기 전용 입구’처럼 쓰는 흐름도 있음

    • 이동 중에 생각, 할 일, 저널 기록, 체크리스트 항목을 메시지로 던져 넣을 수 있음
    • 나중에 앱에서 “저널로”, “나중에”, “체크리스트로” 같은 식으로 정리하는 방식
    • 작성자는 회의 중 머릿속 부담을 줄이기 위해 모든 입력을 일단 Chat.md에 쌓는 방향으로 바꿨다고 함
  • 생산성 도구에 대한 태도는 은근히 까칠함

    • 고급 템플릿, 플러그인, AI 워크플로가 지식 관리를 해주는 것처럼 보이지만 실제 사고를 대신하진 못한다고 봄
    • “Second Brain”이 커질수록 생각을 미래의 나에게 미루는 문제가 생긴다는 관점임
    • 그래서 파일 하나에 아이디어 하나, 맥락 없이도 이해 가능한 노트, 관련 노트 링크, 재방문과 사고를 강조함
  • 개발 쪽 디테일도 꽤 많이 공개돼 있음

    • 서버는 Go 기반이고, cmd/server, server/sync, server/bot.go, tests 같은 구조를 가짐
    • 의존성은 가능하면 피하고, 필요한 의존성도 repo 안에 vendoring해서 자기완결성을 유지하려고 함
    • Markdown 링크를 표준 문법으로 되돌린 이유도 GitHub 같은 외부 환경과의 호환성을 위해서임
    • WASM은 복잡도와 8MB 크기 때문에 제거하고 JS 구현으로 돌아섰다고 설명함
  • 성능 감각도 재밌음 — “파일이나 mutex 때문에 느릴까 봐 겁먹지 말라”는 식임

    • mutex lock/unlock은 약 25ns
    • SSD에서 4KB 랜덤 읽기는 약 150,000ns
    • 1ms는 1,000,000ns라서, 실제 병목을 착각하지 말자는 메시지에 가까움

기술 맥락

  • 이 프로젝트가 Markdown 파일을 고집하는 이유는 단순한 취향이 아니에요. 노트 앱이 망하거나 서비스가 닫혀도 사용자의 지식 베이스가 plain text로 남아야 한다는 판단이 깔려 있거든요.

  • local-first를 기본값으로 둔 것도 같은 맥락이에요. 서버 DB를 먼저 설계하면 동기화와 계정 기능은 편해지지만, 데이터 소유권과 장기 보존성은 약해져요. Files.md는 그 트레이드오프에서 사용자의 파일을 우선한 셈이에요.

  • 빌드 시스템을 피하고 web/index.html 중심으로 가려는 선택은 개발자 입장에선 꽤 과감해요. 최신 프론트엔드 생태계의 편의성을 일부 포기하는 대신, 10년 뒤에도 열릴 가능성과 LLM이 이해하기 쉬운 작은 코드베이스를 얻으려는 거예요.

  • 동기화도 하나의 정답을 강요하지 않아요. 프라이버시가 중요하면 로컬만 쓰고, 편의성이 중요하면 클라우드 폴더나 호스팅 서버를 쓰는 식이에요. 노트 앱의 핵심이 서버 기능이 아니라 파일 구조에 있다는 걸 보여주는 설계예요.

노트 앱 얘기처럼 보이지만 핵심은 ‘지식관리 도구를 얼마나 단순하게 유지할 것인가’에 가까움. 요즘 LLM 시대에 오히려 plain file, 작은 코드베이스, 로컬 우선이라는 방향이 꽤 설득력 있게 돌아오고 있음.

댓글

댓글

댓글을 불러오는 중...

open-source

위키피디아에도 빅테크식 반노조 플레이북이 들어왔다

위키미디어 재단이 5월 열흘 사이 MediaWiki 장기 핵심 개발자를 해고하고, 자원봉사 편집자 요청을 처리하던 Community Tech 팀을 해산했다는 비판 글이다. 해고된 인력 상당수가 노조 조직 활동과 연결돼 있었고, 위키피디아 편집자들은 연대 파업까지 거론하고 있다. 재단은 2억9660만 달러의 준비금과 빠르게 성장하는 AI 대상 API 매출을 갖고 있어, 이 사안이 단순 비용 절감으로 보기 어렵다는 게 글의 핵심이다.

open-source

캘리포니아, 연령 확인법에서 리눅스 빼려는 수정안 추진

캘리포니아가 운영체제에 사용자 나이 확인을 요구하는 법안에서 대부분의 오픈소스 운영체제를 제외하는 수정안을 추진 중이다. 데비안, 페도라, 우분투, 아치, 리눅스 민트 같은 배포판은 빠질 가능성이 커졌지만, 스팀OS처럼 독점 앱 생태계와 연결된 플랫폼은 여전히 애매한 상태다.

open-source

마이크로소프트, 45년 전 86-DOS 소스코드를 오픈소스로 공개

마이크로소프트가 86-DOS 1.00 출시 45주년에 맞춰 지금까지 발견된 것 중 가장 오래된 DOS 소스코드를 공개했어. 팀 패터슨의 차고에 있던 도트 매트릭스 출력물을 스캔하고 옮겨 적어, 원본 바이너리와 바이트 단위로 동일하게 다시 컴파일되는 수준까지 복원한 게 포인트야.

open-source

밤부 랩, AGPLv3 위반 논란으로 오픈소스 커뮤니티와 충돌

3D 프린터 제조사 밤부 랩이 AGPLv3 라이선스 위반 논란에 휘말렸고, Software Freedom Conservancy가 두 건의 위반 사례를 확인했다는 내용이야. Louis Rossmann과 Gamers Nexus는 관련 개발자의 법적 방어를 위해 2만달러를 기부했고, 갈등의 핵심은 오픈소스 기반 생태계를 클라우드와 DRM으로 점점 닫아가려는 움직임이야.

open-source

플리퍼, 리눅스 기반 확장형 기기 '플리퍼 원' 공개

플리퍼가 기존 플리퍼 제로를 대체하는 후속작이 아니라, 리눅스 기반 네트워킹·확장형 기기인 플리퍼 원을 공개했어. RK3576 8코어 ARM 칩, 와이파이 6E, 듀얼 이더넷, NVMe, HDMI 4K 120Hz까지 넣으면서 장난감 같은 해킹 도구에서 훨씬 범용적인 리눅스 장비 쪽으로 방향을 넓히는 그림이야.