Notesnook
一款端到端加密的笔记应用,可替代Evernote。
网站 | 关于我们 | 路线图 | 下载 | Twitter | Discord
概述
Notesnook是一款免费(言论自由意义上的)且开源的笔记应用,注重用户隐私和易用性。为确保零知识原则,Notesnook使用XChaCha20-Poly1305
和Argon2
在您的设备上加密所有内容。
Notesnook是我们的证明,表明隐私(并非总是)必须以牺牲便利性为代价。我们旨在为用户提供安心感和100%的信心,确保他们的笔记安全可靠。选择完全开源是朝着这个目标迈出的最关键步骤之一。
该存储库包含构建和使用Notesnook网页、桌面和移动客户端所需的所有代码。如果您想查看完整功能列表或截图,请访问网站。
开发者指南
技术和语言
Notesnook使用以下技术构建:
- JavaScript/Typescript — 本仓库处于混合状态。许多新代码用Typescript编写,旧代码正在逐步移植。
- React — 所有平台的整个前端都使用React构建。
- React Native — 移动应用使用React Native。
- Electron — 桌面应用。
- NPM — 在此列出是因为我们在任何项目中都不使用Yarn、PNPM或其他包管理器。
- Nx — 维护单体仓库很困难,但Nx使其变得更容易。
注意:单体仓库中的每个项目都包含自己的架构细节,您可以参考。
单体仓库结构
名称 | 路径 | 描述 |
---|---|---|
@notesnook/web | /apps/web | 网页客户端 |
@notesnook/desktop | /apps/desktop | 桌面客户端 |
@notesnook/mobile | /apps/mobile | Android/iOS客户端 |
@notesnook/web-clipper | /extensions/web-clipper | 网页剪藏器 |
@notesnook/core | /packages/core | 所有平台共享的核心 |
@notesnook/crypto | /packages/crypto | 围绕libsodium的加密库封装 |
@notesnook/clipper | /packages/clipper | 网页剪藏器核心,处理与实际页面剪藏相关的所有内容 |
@notesnook/editor | /packages/editor | Notesnook编辑器及所有扩展 |
@notesnook/editor-mobile | /packages/editor-mobile | @notesnook/editor 针对移动客户端的非常薄的封装 |
@notesnook/logger | /packages/logger | 简单且可插拔的日志记录器 |
@notesnook/sodium | /packages/sodium | libsodium的封装,支持Node.js和浏览器 |
@notesnook/streamable-fs | /packages/streamable-fs | 基于IndexedDB的文件系统的流式接口 |
@notesnook/theme | /packages/theme | 网页和桌面客户端使用的核心主题 |
贡献指南
如果您有兴趣为Notesnook做出贡献,我强烈建议您查看贡献指南。您会在那里找到所有相关信息,如样式指南、如何提交PR、如何提交commit等。
支持和帮助
您可以通过以下方式联系我们:
我们会处理您可能遇到的所有查询、问题和错误报告。随时询问。