-
Ferrite는 Markdown, JSON, YAML, TOML 파일을 빠르고 가볍게 편집할 수 있는 Rust 기반 텍스트 에디터
-
egui 프레임워크를 사용해 네이티브 수준의 반응성과 크로스플랫폼 실행 환경을 제공
-
WYSIWYG 미리보기, MermaidJS 다이어그램 렌더링, Git 통합, 워크스페이스 모드 등 다양한 기능 지원
- 프로젝트의 모든 Rust 코드와 문서가 AI(Claude by Anthropic) 에 의해 생성되었으며, 사람은 검토와 테스트를 담당
- AI 보조 개발의 실제 적용 사례로, Rust 생태계와 AI 개발 협업 가능성을 보여주는 프로젝트
Ferrite 개요
-
Ferrite는 Markdown, JSON, YAML, TOML 파일을 지원하는 고속·경량 텍스트 편집기
-
Rust와 egui로 작성되어 네이티브 수준의 반응성과 크로스플랫폼 실행 보장
- Windows에서 주로 개발·테스트되었으며, Linux와 macOS에서도 동작 가능
- 프로젝트는 MIT 라이선스로 공개되어 있으며, GitHub에서 약 600개의 스타를 획득
AI 기반 개발
- Ferrite의 모든 Rust 코드, 문서, 설정 파일은 AI(Claude by Anthropic) 가 작성
- 개발자는 제품 방향 설정, 테스트, AI 개발 조율 역할 수행
- 코드는 검토 및 테스트를 거쳐 수용되며, AI 생성 과정을 투명하게 공개
- 프로젝트는 AI 보조 개발의 한계와 가능성 탐구를 목적으로 함
주요 기능
-
Markdown 실시간 미리보기(WYSIWYG) 와 문법 하이라이팅 지원
-
다중 포맷 지원: Markdown, JSON, YAML, TOML
-
Tree Viewer로 JSON/YAML/TOML 구조를 계층적으로 탐색 및 인라인 편집 가능
-
정규식 검색·치환, 줄 이동(Alt+↑/↓) , 라인 복제(Ctrl+Shift+D) 등 생산성 기능 포함
-
자동 괄호·따옴표 닫기, 자동 저장, 라인 너비 설정, 미니맵, 코드 폴딩 기능 제공
MermaidJS 다이어그램 렌더링
-
MermaidJS를 이용해 11종의 다이어그램을 네이티브로 렌더링
- Flowchart, Sequence, Pie, State, Mindmap, Class, ER, Git Graph, Gantt, Timeline, User Journey
- Markdown 미리보기 내에서 직접 시각화 가능
워크스페이스 및 편집 환경
-
Workspace Mode로 폴더 단위 열기, 파일 트리 탐색, 빠른 파일 전환(Ctrl+P), 전체 검색(Ctrl+Shift+F) 지원
-
Git 통합으로 수정·추가·무시 파일 상태를 시각적으로 표시
-
세션 복원 기능으로 탭, 커서 위치, 스크롤 상태를 재시작 시 복구
-
Zen Mode로 집중형 글쓰기 환경 제공, Split View로 원본과 렌더링 동시 확인 가능
설치 및 빌드
-
Windows, Linux(.deb, tar.gz), macOS(Intel/ARM) 용 사전 빌드 바이너리 제공
-
Rust 1.70+ 환경에서 직접 빌드 가능
-
cargo build --release 명령으로 실행 파일 생성
- Linux에서는 .deb 설치 시 /usr/bin/ferrite에 등록되고 .md, .json, .yaml, .toml 파일 연동
단축키 및 설정
-
파일 조작: Ctrl+N(새 파일), Ctrl+O(열기), Ctrl+S(저장), Ctrl+W(탭 닫기)
-
탐색: Ctrl+Tab(다음 탭), Ctrl+P(파일 전환), Ctrl+Shift+F(파일 검색)
-
편집: Ctrl+Z(되돌리기), Ctrl+G(라인 이동), Ctrl+B(굵게), Ctrl+K(링크 삽입)
-
보기: F11(전체화면), Ctrl+,(설정 열기), Ctrl+Shift+[ / ](모두 접기/펼치기)
- 설정 파일은 OS별 경로에 저장되며, 테마·폰트·자동저장·라인 너비 등 사용자 지정 가능
기술 스택
-
언어: Rust 1.70+
-
GUI 프레임워크: egui 0.28 + eframe 0.28
-
Markdown 파서: comrak 0.22
-
문법 하이라이팅: syntect 5.1
-
Git 통합: git2 0.19
-
CLI 파싱: clap 4
-
파일 다이얼로그: rfd 0.14
-
클립보드: arboard 3
-
파일 감시: notify 6
-
퍼지 매칭: fuzzy-matcher 0.3
개발 및 기여
-
기여자 4명이 활동 중이며, Pull Request와 Issue를 통한 협업 가능
-
cargo fmt, cargo clippy, cargo test 등을 통한 코드 품질 검증 절차 제공
-
ROADMAP.md에 향후 기능 계획과 알려진 이슈 명시
사용된 주요 라이브러리 및 도구
-
egui, comrak, syntect, git2, Inter/JetBrains Mono 폰트
-
Claude(Anthropic) , Cursor, Task Master 등 AI 개발 도구 사용
요약
- Ferrite는 Rust와 AI 협업으로 개발된 오픈소스 Markdown 편집기로,
Mermaid 다이어그램 렌더링, 다중 포맷 지원, Git 통합, 고성능 egui UI를 특징으로 함
-
AI 생성 코드의 실제 적용 사례로, 차세대 개발 자동화 흐름을 보여주는 프로젝트