textarea.my:使用 URL 哈希的极简文本编辑器

发现 textarea.my——一个轻量化、仅浏览器运行的文本编辑器,把您的笔记直接存储在页面 URL 中。凭借高速压缩、可选二维码及便捷分享,这款开源工具让您在无需服务器的情况下随手保存 Markdown、笔记或代码片段。快速学习如何使用、定制并扩展它,了解为何这个小巧项目是开发者与普通用户的必备之选。

介绍 textarea.my:轻量级文本编辑器,内置于 URL

在云存储、第三方笔记应用和复杂编辑器主导工作流程的时代,textarea.my 提供了一个极其简单的替代方案。这个开源项目将普通浏览器窗口变成一个功能齐全的文本编辑器,它的内容 完全 存储在 URL hash 中,并通过 localStorage 做备份以增加冗余。无论你是快速记录笔记,撰写简短的 Markdown 片段,还是草拟代码段,textarea.my 都为你提供了一个快速、独立的解决方案,无需任何依赖。

为什么使用 textarea.my?

益处 所指
无服务器 所有数据存储在本地——不需要除首次加载页面之外的网络连接
一键分享 复制 URL,随意转发。接收者将立即看到内容
极小占用 压缩后低于 5 KB,毫秒级加载
内置压缩 使用 deflate 压缩文本,保持 URL 简短
开源 MIT 许可,可自行 Fork、修改或托管

该项目由 Anton Medvedev 维护,保存在结构良好的 GitHub 仓库(https://github.com/antonmedv/textarea)中。它是务实开源的绝佳示例——一款解决实际需求、毫不多余的工具。

核心功能

  1. URL 哈希持久化 – 每一次修改都会更新 URL hash。整个文本被安全编码,因此你可以精准分享并重新加载你所写的内容。
  2. Deflate 压缩 – 文本会自动压缩,连较长的 Markdown 文件也能轻松放入 URL。
  3. localStorage 备份 – 同一份数据也存储于 localStorage,若 hash 失效(如 URL 长度限制)提供额外持久化。
  4. 通过 DevTools 自定义 CSS – 虽然编辑器本身极简,但你可在 DevTools 中编辑 <article> 元素来微调外观。修改会随 URL hash 一起保存。
  5. 二维码生成 – 在 URL 末尾追加 /qr,页面将生成一个二维码,指向同一篇文档。
  6. 标题模板 – 在首行加上 # Title,页面标题将自动采用该值。
  7. 独立 Wiki 引擎 – 仓库内包含一个以相同核心驱动的小型 Wiki,可在同仓库下的 wiki 获取。

快速开始指南

  1. 打开编辑器 – 访问 https://textarea.my。
  2. 开始输入 – 编辑器默认空白;你输入的任何文字会立即编码到 URL。
  3. 保存 – 点击 Copy URL 按钮(或使用 Ctrl+C 快捷键),并将链接保存到你想去的地方。
  4. 重新载入 – 在任意浏览器中打开 URL,即可看到笔记恢复。
  5. 分享 – 将链接发送给朋友;不需要特殊权限。

示例

# My Quick Note

This is a _markdown_ example.

- Item 1
- Item 2

输入后,URL 可能如下所示:

https://textarea.my#E2N4YlV9Yl7sX... (truncated for brevity)

复制此链接并粘贴到聊天或邮件,即可让接收者看到完全相同的笔记。

高级使用与专业技巧

提示 做法
添加自定义样式 打开 DevTools(F12),选择 <article>,并注入 CSS。例如:article { background:#f4f4f4; color:#333; }。该样式会包含在 hash 中,分享后他人会看到相同外观。
创建二维码 访问 <url>/qr。出现二维码,链接回完整文档。
使用其他语言 在 <meta charset="utf-8"> 中设置字符集,以获得完整的 Unicode 支持。
跨标签页持久化 由于 localStorage 为 hash 提供备份,您可以在多个标签页中保持同一条笔记打开;更改通过简单轮询机制同步。
自行部署 克隆仓库后,在任意静态主机(如 Netlify、GitHub Pages 等)提供 index.html。该项目还包含 PWA 清单,支持离线使用。

与流行方案的比较

功能 textarea.my Google Docs Typora Joplin
离线 ✅ ❌ ✅ ✅
URL 共享 ✅ ❌ ❌ ❌
大小 5 KB 1 MB+ 15 KB 30 KB
Markdown ✅ (原始) ✅ ✅ ✅
自定义 CSS ✅ ❌ ❌ ❌
压缩 ✅ ❌ ❌ ❌

对于快速、可分享的片段,textarea.my 提供更轻量、更注重隐私的替代方案。

社区与贡献

作为一个开源仓库,textarea.my 热烈欢迎贡献。简单的改进点包括添加拼写检查器、改进移动端体验或增添更多文件导出方式。你可 Fork 项目,在本地实验后提交 Pull Request。

如何贡献

  1. Fork 仓库。
  2. 在新分支中做更改。
  3. 运行测试套件(如果克隆了仓库,请使用 npm test)。
  4. 提交带有清晰描述的 Pull Request。

维护者会在一周内审查 PR 并迅速合并非破坏性更改。

未来改进

潜在路线图项目包括:

  • 实时协作:使用 WebRTC 将 URL 编辑的简洁性与多用户支持相结合。
  • 版本历史:在 localStorage 中保留修订版本栈。
  • 导出选项:PDF、DOCX 或 HTML 输出。
  • 暗黑模式切换及其他 UI 首选项。

这将保持核心理念,同时为高阶用户增强可访问性。

结论

Teaser.my 证明了 少即是多:一个无需服务器、账户,也不依赖繁重库的微型自包含编辑器。其聚焦于基于 URL 的持久化与共享,使其成为开发者、作家以及任何喜爱即时笔记、并确信仅存于本机的人们的理想选择——除非你决定分享。探索代码,今天就试一试,看看你能多么轻松地将一个 URL 变为个人文本编辑器。


GitHub 仓库: https://github.com/antonmedv/textarea

实时演示: https://textarea.my