一个现代化、轻量级的笔记应用,使用 React 和 Appwrite 构建,提供简单而强大的笔记管理体验。
- 🌈 动态笔记卡片
- 🔒 Appwrite 后端支持
- 📱 响应式设计
- 🎨 个性化颜色主题
- ⚡ 高性能拖拽和输入
- 🗑️ 一键删除笔记
- ➕ 快速新建笔记
- React 19
- Vite
- Appwrite
- ESLint
- Node.js (v18+)
- npm 或 yarn
- 克隆仓库
git clone https://github.com/yourusername/fuckstack-note-app.git
cd fuckstack-note-app/note-app
- 安装依赖
npm install
- 配置环境变量
创建
.env
文件,添加以下内容:
VITE_APPWRITE_ENDPOINT=your_appwrite_endpoint
VITE_APPWRITE_PROJECT_ID=your_project_id
VITE_DATABASE_ID=your_database_id
VITE_COLLECTION_NOTES_ID=your_collection_id
- 启动开发服务器
npm run dev
note-app/
├── src/
│ ├── appwrite/ # Appwrite 配置
│ ├── components/ # React 组件
│ │ ├── NoteCard.jsx
│ │ ├── NoteCardHeader.jsx
│ │ └── NoteCardBody.jsx
│ ├── pages/ # 页面组件
│ └── utils/ # 工具函数
├── public/ # 静态资源
└── README.md # 项目文档
- Fork 仓库
- 创建功能分支 (
git checkout -b feature/AmazingFeature
) - 提交更改 (
git commit -m 'Add some AmazingFeature'
) - 推送到分支 (
git push origin feature/AmazingFeature
) - 提交 Pull Request
- NoteCard 输入保存已增加防抖优化,提升性能
- NoteCard 支持删除笔记,UI 交互更友好
- 支持新建笔记按钮,提升用户体验
- NoteCard 组件已拆分为 Header/Body,便于维护
- 工具函数已增强健壮性,便于单元测试
- 拖拽性能优化:只在 mouseup 时更新状态
- 边界检查:防止卡片拖出可视区域
- 错误处理增强:更好的用户提示和重试机制
- 离线模式支持
- 国际化支持
- 笔记内容长度限制
- 批量操作功能
- 笔记搜索功能
基于 MIT 许可证 - 详见 LICENSE.md
Happy Noting! 📓✨