miikun

hiro0218活跃维护

基于 Electron 和 Vue 的轻量 Markdown 编辑器,界面简洁,适合日常写笔记和文档。

Simple Markdown Editor

暂无版本245star50fork同步于 2026-11-10 18:04 UTC

怎么上手

由 README 提炼,执行前请确认
npm install
npm run electron:serve
硬件要求按 README 说明

README 未说明硬件要求,仅要求安装 Node.js 和 npm,以 Electron 桌面应用形式运行

下载:源码 zip·GitHub Releases(安装包)本站不镜像安装包

项目说明

由 README 自动翻译提炼

一个专注写作的本地 Markdown 桌面编辑器,支持加密笔记和多标签,无需账号或工作区

基于 Electron 和 Vue 的轻量 Markdown 编辑器,界面简洁,适合日常写笔记和文档。

核心能力

  • 编辑 .md、.txt 及密码加密的 .mii 文件
  • 多标签页支持未保存标记、关闭与拖拽排序
  • 可选实时预览,支持表格、脚注、锚点与 Shiki 高亮
  • 提供原生菜单快捷键和亮色、暗色、跟随系统主题
  • 粘贴 URL 时自动读取页面标题转为 Markdown 链接

容易踩的坑

渲染进程直接使用 Electron 和 Node API,README 明确没有浏览器版 npm run serve 或 npm run build 脚本;当前生产构建配置只打包 macOS zip;项目暂无自动化测试,改动行为需手动启动应用验证

内容由模型根据 README 生成,可能不完整或不准确,以官方文档为准。看原文 README

最近发版

0 个版本

暂无 release 数据(可能没有发版,或尚未同步)。

用户点评

登录用户的真实使用记录,可按版本和硬件筛选
共 0 条

    还没有人点评。第一个说出真实体验的人最有价值。

    README 原文

    未翻译

    miikun

    A simple Markdown editor built for focused writing.

    miikun screenshot

    miikun is an Electron + React + TypeScript desktop Markdown editor I built because I wanted a simple place to write. It edits plain .md and .txt files, saves password-protected .mii files, and keeps the UI quiet so the document stays in front.

    Use it when you want local files, native desktop shortcuts, tabs, and preview without a workspace or account.

    Highlights

    • Simple local editing for .md, .txt, and encrypted .mii files
    • Multi-tab workflow with dirty-state indicators, tab closing, and drag reordering
    • Optional live Markdown preview with tables, checkboxes, footnotes, anchors, definition lists, and Shiki syntax highlighting
    • Password prompt for opening and saving .mii files
    • Native desktop menus and shortcuts for file, edit, preview, theme, zoom, and window controls
    • Light, dark, and system themes, plus an Always on Top mode for reference notes
    • Drag-and-drop file opening
    • URL paste helper that turns a pasted URL into a Markdown link when the page title can be read

    Quick Start

    Prerequisites:

    • Node.js
    • npm

    Install dependencies and launch the Electron app:

    npm install
    npm run electron:serve
    

    The development server is managed by electron-vite and Vite. Browser-only npm run serve / npm run build scripts are not defined because the renderer uses Electron and Node APIs directly.

    Everyday Use

    ActionShortcut / Path
    New tabCmdOrCtrl+T or CmdOrCtrl+N
    Open fileCmdOrCtrl+O or drag a file into the window
    SaveCmdOrCtrl+S
    Save asCmdOrCtrl+Shift+S
    Close tabCmdOrCtrl+W
    Next / previous tabCtrl+Tab / Ctrl+Shift+Tab
    Toggle previewView -> Toggle Preview Panel
    Change themeView -> Theme
    Always on TopCmdOrCtrl+Shift+T

    To create an encrypted note, save the document with the .mii extension and enter a password. Opening that file later asks for the password before the content is loaded.

    Development

    # Run the Electron app in development
    npm run electron:serve
    
    # Build the production desktop app
    npm run electron:build
    
    # Build Electron main and renderer output without packaging
    npm run prebuild
    
    # Lint JavaScript, TypeScript, and React files
    npm run lint
    
    # Type-check TypeScript sources
    npm run typecheck
    
    # Check SCSS
    npm run lint:scss
    
    # Auto-format SCSS
    npm run format:scss
    

    The current production build configuration targets a macOS zip package.

    Architecture

    miikun keeps the Electron main process small and puts the editor workflow in the React renderer. Third-party libraries are isolated behind adapter modules so the rest of the app depends on app-facing APIs instead of direct library imports.

    Key areas:

    • src/adapters/ wraps CodeMirror, markdown-it/Shiki, filesystem, encryption, and Electron APIs
    • src/services/ owns editor commands, file operations, render sequencing, menus, and tab document state
    • src/components/ contains the editor, tab bar, toolbar, drag-and-drop overlay, and password prompt
    • src/services/ and src/adapters/ define the boundaries between editor state, file operations, preview rendering, and commands

    Contributing

    Issues and focused pull requests are welcome. Before opening a PR, run:

    npm run lint
    npm run lint:scss
    

    There is no automated test suite yet. For changes that affect behavior, also launch the app with npm run electron:serve and verify the edited workflow manually.

    License

    MIT