# y-note **Repository Path**: nickchen-zoom/y-note ## Basic Information - **Project Name**: y-note - **Description**: No description available - **Primary Language**: Unknown - **License**: Not specified - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2025-02-11 - **Last Updated**: 2025-02-28 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # y-markdown-editor #### 一个基于 Electron 的 Markdown 编辑器。 #### 技术栈:Electron + React + TypeScript + Zustand + TailwindCSS + tui-editor ## 开发记录 - [x] 项目初始化,引入组件库`Ant Design`,样式处理工具`TailwindCSS`,状态管理工具`Zustand` - [x] 完成左侧菜单组件,完成文章列表的增删改查。 - [x] 新增`Markdown`文件到指定文件路径 - [x] 文章列表的增删改查。 - [x] 右侧内容页顶部`Tabs` - [x] 引入[tui-editor](https://github.com/nhn/tui.editor) - [x] `Markdown`编辑器文件的保存、预览 - [x] 编辑文章保存后,自动更新到本地存储的文件 - [x] 导入文件 - [x] 「右键菜单」删除本地文件、删除源文件 - [x] 「右键菜单」定位文件位置 - [x] 自定义顶部 - [x] 通过`electron-localshortcut`修复`Mac`快捷键不生效的问题 - [x] 通过`Zustand`的`persist`持久化数据 - [x] 抽离`main/index.ts`中的一些逻辑 - [x] 解决`markdown`编辑器中`img`无法显示的问题 - [x] `tab` 页签未保存红标`badge` - [x] `tab` 页签删除时,未保存的情况下给提示 - [x] 添加菜单栏目的拖拽排序 - [x] 编辑器引入无版权图库`pixabay`,可复制和插入。 - [x] 添加图片上传功能,图片上传到`oss`,并返回图片链接。 - [x] 新增托盘事件,将图片或静态资源拖拽至顶部托盘,自动上传至`oss`。 - [x] 新增OSS配置,配置后可自动上传图片到OSS。 - [x] 无版权图库图片地址有过期时间,需要在复制或插入时,将图片传到`oss`,并返回图片链接。 - [x] 添加剪裁库`cropperjs react-cropper`,实现图片裁剪功能,裁剪后上传到`oss`,并返回图片链接。 - [x] 新增图片上传配置,可选择上传到`阿里云`或`七牛云`。 - [x] 图片剪裁支持固定尺寸剪裁。 - [x] 图片格式转换,通过`sharp`库,支持`png`、`jpeg`、`webp`、`gif`、`avif`格式转换。 - [x] 图片压缩,通过`sharp`库,支持`jpeg`格式压缩。 - [x] 支持将在线图片下载到本地文件夹`electron-dl` - [x] 新增流程图导出为PNG、JPEG格式,并保存到图库。 - [x] 解决打包后`sharp`库不生效的问题。需要在`package.json`中添加`"asar": true`,并配置`asarUnpack`,`vite.config.ts`中配置`rollupOptions`。