- Ferrite adalah editor teks berbasis Rust untuk mengedit file Markdown, JSON, YAML, dan TOML dengan cepat dan ringan
- Menggunakan framework egui untuk menghadirkan responsivitas setara native dan lingkungan eksekusi lintas platform
- Mendukung berbagai fitur seperti pratinjau WYSIWYG, rendering diagram MermaidJS, integrasi Git, dan mode workspace
- Seluruh kode Rust dan dokumentasi proyek dibuat oleh AI (Claude by Anthropic), sementara manusia bertugas melakukan peninjauan dan pengujian
- Sebagai contoh penerapan nyata pengembangan berbantuan AI, proyek ini menunjukkan kemungkinan kolaborasi antara ekosistem Rust dan pengembangan AI
Gambaran umum Ferrite
- Ferrite adalah editor teks cepat dan ringan yang mendukung file Markdown, JSON, YAML, dan TOML
- Ditulis dengan Rust dan egui, sehingga menjamin responsivitas setara native dan berjalan lintas platform
- Terutama dikembangkan dan diuji di Windows, namun juga dapat berjalan di Linux dan macOS
- Tersedia binary prebuilt untuk Windows, Linux (.deb, tar.gz), macOS (Intel/ARM)
Pengembangan berbasis AI
- Semua kode Rust, dokumentasi, dan file konfigurasi Ferrite ditulis oleh AI (Claude by Anthropic)
- Pengembang berperan dalam menentukan arah produk, pengujian, dan koordinasi pengembangan dengan AI
- Kode diterima setelah melalui peninjauan dan pengujian, dan proses pembuatan oleh AI dipublikasikan secara transparan
- Proyek ini bertujuan untuk mengeksplorasi batasan dan potensi pengembangan berbantuan AI
Fitur utama
- Mendukung pratinjau Markdown real-time (WYSIWYG) dan syntax highlighting
- Dukungan multi-format: Markdown, JSON, YAML, TOML
- Dengan Tree Viewer, struktur JSON/YAML/TOML dapat dijelajahi secara hierarkis dan diedit secara inline
- Mencakup fitur produktivitas seperti pencarian dan penggantian regex, memindahkan baris (Alt+↑/↓), dan duplikasi baris (Ctrl+Shift+D)
- Menyediakan penutupan otomatis kurung dan tanda kutip, autosave, pengaturan lebar baris, minimap, dan code folding
Rendering diagram MermaidJS
- Merender 11 jenis diagram secara native menggunakan MermaidJS
- Flowchart, Sequence, Pie, State, Mindmap, Class, ER, Git Graph, Gantt, Timeline, User Journey
- Dapat divisualisasikan langsung di dalam pratinjau Markdown
Workspace dan lingkungan pengeditan
- Dengan Workspace Mode, mendukung pembukaan per folder, penjelajahan tree file, perpindahan file cepat (Ctrl+P), dan pencarian global (Ctrl+Shift+F)
- Integrasi Git menampilkan status file yang diubah, ditambahkan, atau diabaikan secara visual
- Fitur pemulihan sesi mengembalikan tab, posisi kursor, dan status scroll saat aplikasi dijalankan ulang
- Zen Mode menyediakan lingkungan menulis yang fokus, dan Split View memungkinkan melihat source dan hasil rendering secara bersamaan
1 komentar
Komentar Hacker News
Saya berharap ada perkembangan di Zed, tetapi proyek ini juga cukup menarik
Saya cukup sering memakai Obsidian, tetapi akan bagus jika ada alternatif sungguhan yang fokus pada hal-hal mendasar
Saya penasaran apa tujuan akhirnya. Akan saya pantau ke depannya
Memang belum siap diposting di Show HN, tetapi saya ingin mendengar umpan balik awal
Bentuknya bisa langsung dijalankan tanpa Electron atau teknologi web, dan di v0.3.0 Mermaid akan dipisahkan menjadi crate tersendiri serta akan dibuat widget kustom yang melampaui keterbatasan TextEdit milik egui
Dalam jangka panjang, targetnya adalah berkembang menjadi library editor headless berbasis Rust
Untuk detailnya, silakan lihat ROADMAP.md
Menarik bahwa Ferrite terutama dikembangkan dan diuji di Windows
Belakangan ini pengguna Windows terasa seperti warga kelas dua, jadi ini menyenangkan untuk dilihat
Tetapi saya agak terkejut melihat kalimat “kode proyek ini 100% dihasilkan AI”
Meski begitu, saya suka karena hal itu diungkapkan secara jujur
Sepertinya baru ditambahkan setelah beberapa pengguna menyoroti bahwa fakta penggunaan AI disembunyikan
Saya ingin sedikit mempromosikan aplikasi saya, Octarine
Ini adalah aplikasi catatan Markdown bergaya WYSIWYG yang ditulis dengan Rust(Tauri) dan menyimpan semua data secara lokal
Bukan “vibe coded” :)
Akhir-akhir ini ada banyak konten buatan AI di HN, dan postingan ini juga tampaknya penuh dengan kode dan komentar buatan AI
Mungkin karena menyentuh topik-topik populer dengan baik
Teks di tangkapan layar terlalu kecil sampai-sampai perlu kaca pembesar
Tangkapan layar sebaiknya diambil dengan ukuran yang tidak terlalu besar maupun terlalu kecil, agar isinya terlihat jelas
Khususnya pada resolusi tinggi, jika ruang kosong terlalu banyak justru keterbacaannya menurun
Karena diambil pada resolusi tinggi, jadinya sulit dibaca di layar kecil
Saya akan mengecilkan ukuran jendela dan mengurangi ruang kosong lalu mengambil ulang
Saya rela membayar untuk Typora
Meski hanya mendukung Markdown, ranah ini masih punya banyak potensi
Terutama sekarang ketika LLM banyak menghasilkan teks terstruktur dan diagram, saya rasa ini makin relevan
Selain itu, ini juga open source
Jarang melihat proyek egui yang tidak terasa begitu khas dengan gaya egui
Saya penasaran bagaimana pengalaman mengerjakan sesuatu dengan egui
Karena immediate mode, pengelolaan state jadi sederhana
Namun TextEdit bukan untuk editor kode, jadi tidak ada multi-cursor atau code folding
Karena itu di v0.3.0 akan diganti dengan widget kustom
Fakta bahwa tema bawaan terasa terlalu “egui banget” diatasi dengan tema kustom
Senang melihat penggunaan rendering Markdown native
Bagus karena bukan pendekatan seperti library lain yang menyalakan Chromium lalu mengambil tangkapan layar
Saat dibagikan, tampilannya bisa saja berbeda
Di dalam Ferrite itu bukan masalah, dan untuk keperluan berbagi, fitur ekspor SVG akan ditambahkan di v0.3.0
Saya penasaran kenapa pengaturan dan instruksi agen AI dihapus dari repositori (lihat .gitignore)
Namun file konfigurasi AI tidak diperlukan dalam proyek, jadi dikecualikan
Saya akan menambahkan di README bahwa proyek ini mendapat bantuan AI
Kodenya diterapkan setelah ditinjau, bukan diterima begitu saja tanpa kritik
Commit-nya hanya 10, dan beberapa di antaranya dipenuhi dokumen markdown penuh emoji
Akan berguna jika parsing dan layout Mermaid saja dipisahkan menjadi crate tersendiri
Akan bagus kalau ada tool CLI cepat yang bisa mengeluarkan SVG/PDF/PNG
Renderer Mermaid sekitar 7000 baris akan diekstrak menjadi crate independen, lalu dukungan output SVG/PNG dan CLI akan ditambahkan
Ditulis murni dalam Rust, jadi juga bisa kompatibel dengan WASM. Semoga dinantikan