当前位置: 首页 > article >正文

浏览器中的Markdown编辑器

砚台/InkStone

项目地址 https://github.com/2061360308/InkStone ⭐如果喜欢还望大家给个star⭐

《砚台》是一款轻量级的在线 Markdown 编辑器,专为静态博客优化,完全运行在浏览器中,无需服务器支持。它不仅支持可视化编辑 YAML front matter,还能浏览 GitHub 文章并一键推送。后续我们还会计划添加查看文件提交历史,内置S3等图床管理工具等。

项目特点

  • 轻量运行:纯前端静态页面,使用无需下载。无需服务器支持,可自行随个人站点一起发布,随时随地编辑。
  • 静态博客优化:专为 Hexo、Hugo 等静态站点生成器设计,支持同步到 GitHub。
  • YAML front matter 编辑:可视化编辑 YAML front matter,简化日常文章的配置过程。
  • GitHub 集成:支持直接从 GitHub 仓库获取文件,并批量提交文件到 GitHub。
  • 本地缓存:使用 IndexDB 保存本地缓存数据,确保数据安全。除非手动删除,普通清除数据不会丢失。
  • Markdown 编辑器:采用 Vditor 编辑器,支持所见即所得、即时渲染和分屏预览三种模式。

截图展示

授权登录

授权登录

Token登录

Token登录

文件编辑-即时渲染

文件编辑-即时渲染

文件编辑-分屏预览

文件编辑-分屏预览

文件管理器

文件管理器

大纲面板

大纲面板

提交页面

提交页面

设置面板

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传

技术栈

  • TypeScript:提供静态类型检查,提升代码质量和开发效率。
  • Vue.js:渐进式 JavaScript 框架,构建用户界面更加高效。

常见问题

数据存储在哪?
数据存储在浏览器的 IndexDB 中,确保在本地缓存数据的安全性和持久性。除非手动删除,普通清除数据不会丢失。

工作原理是什么?
《砚台》完全运行在浏览器中,利用 Vue.js 构建用户界面,TypeScript 提供静态类型检查,Vditor 作为 Markdown 编辑器,所有操作均在本地完成,无需服务器支持。使用了 GitHub API,本身注册了 GitHub App,可以通过授权让 GitHub App 代替访问仓库,或者用户输入自己的 Token 进行操作。

如何使用?

  1. 可以直接访问我们的演示站点
  2. 选择文章所在仓库
  3. 开始管理创作文章,文章创建日期等可以使用 YAML front matter 可视化功能方便选取。
  4. 通过 GitHub 集成功能浏览和推送文章。

主要为了 Hexo/Hugo 这些用户设计,可以在 GitHub 上利用 Action 生成站点并部署到 GitHub Pages,然后通过本项目的在线编辑器快速编辑仓库文章进行文章创作,而无需在本地继续维护博客项目。

如何参与开发?
访问我们的 GitHub 仓库,查看项目的源代码和开发文档。

如何进行贡献?

  1. Fork 项目仓库。
  2. 创建一个新的分支。
  3. 提交您的更改。
  4. 提交 Pull Request。

可以尝试我们的在线演示站点,然后在 issue 给与反馈,帮助我们了解需求。

未来开发计划

我们计划开发 S3 系列图床管理工具,进一步提升图片管理的便捷性。我们诚挚邀请大家一起来参与项目开发,共同完善《砚台》。

依赖项目

Lute:🎼 一款结构化的 Markdown 引擎,支持 Go 和 JavaScript

highlight.js:JavaScript syntax highlighter

mermaid:Generation of diagram and flowchart from text in a similar manner as Markdown

incubator-echarts:A powerful, interactive charting and visualization library for browser

abcjs:JavaScript library for rendering standard music notation in a browser


http://www.kler.cn/a/507197.html

相关文章:

  • [0242-07].第09节:SpringBoot中简单功能分析
  • 时序数据库TDengine 3.3.5.0 发布:高并发支持与增量备份功能引领新升级
  • 【WPS】【WORDEXCEL】【VB】实现微软WORD自动更正的效果
  • 解决报错:未定义标识符 “M_PI“
  • DAMA CDGA 备考笔记(二)
  • Django自带admin管理系统使用
  • 【2024年华为OD机试】(B卷,100分)- 相对开音节 (Java JS PythonC/C++)
  • java常用开发工具类
  • uniapp 自定义日历组件 源码
  • Spring Boot中的自动配置原理是什么
  • 2025智能网联汽车数据分类分级白皮书
  • redis(2:数据结构)
  • 【云岚到家】-day03-门户缓存方案选择
  • 策略模式详解与应用
  • npm : 无法加载文件 D:\phpdev\nodejs\npm.ps1
  • 【数模学习笔记】插值算法和拟合算法
  • springBoot项目使用Elasticsearch教程
  • docker hello world
  • leetcode 115. 不同的子序列
  • JWT在线解密/解码 - 加菲工具
  • 【人工智能】Python中的自动化机器学习(AutoML):如何使用TPOT优化模型选择
  • 【MySQL实战】mysql_exporter+Prometheus+Grafana
  • 关于jwt和security
  • java day04-面向对象基础(内存 封装 继承 修饰符 工具类 )
  • 【Excel笔记_3】execl的单元格是#DIV/0!,判断如果是这个,则该单元格等于空
  • SAP -最简单smartforms打印保存到本地pdf方法