# GoNote
**Repository Path**: luolip/go-note
## Basic Information
- **Project Name**: GoNote
- **Description**: No description available
- **Primary Language**: Unknown
- **License**: Apache-2.0
- **Default Branch**: main
- **Homepage**: None
- **GVP Project**: No
## Statistics
- **Stars**: 0
- **Forks**: 0
- **Created**: 2026-04-13
- **Last Updated**: 2026-04-13
## Categories & Tags
**Categories**: Uncategorized
**Tags**: None
## README
# GoNote
GoNote 是一个基于 Wails 开发的轻量级桌面记事本应用,支持文件读取、编辑、自动保存等核心功能。
## 功能特性
- **文件操作**:打开文件、自动保存、选择文件夹
- **文件监控**:自动检测文件变化,支持外部修改提醒
- **消息对话框**:支持多种对话框类型(信息、警告、错误、确认)
- **跨平台**:支持 Windows、macOS、Linux
## 技术栈
- **框架**: [Wails](https://wails.io/) v2
- **后端**: Go
- **前端**: Vanilla JavaScript + Vite
- **构建工具**: Wails CLI
## 快速开始
### 前置要求
- Go 1.20+
- Node.js 18+
- Wails CLI
### 安装依赖
```bash
# 安装 Wails CLI
go install github.com/wailsapp/wails/v2/cmd/wails@latest
# 安装前端依赖
cd frontend
npm install
```
### 开发模式
```bash
wails dev
```
### 构建应用
```bash
wails build
```
## 使用说明
### 核心 API
```go
// 读取文件
content, err := app.ReadFile(path string) (string, error)
// 写入文件
err := app.WriteFile(path string, content string) error
// 检测文件变化
modTime, hasChanged, err := app.GetFileModTimeWithCheck(path string, lastKnownModTime int64) (int64, bool, error)
// 打开文件对话框
result, err := app.OpenFileDialog() (FileDialogResult, error)
// 保存文件对话框
result, err := app.SaveFileAsWithName(defaultName string) (FileDialogResult, error)
// 选择文件夹
folderPath, err := app.SelectFolder() (string, error)
// 消息对话框
response, err := app.MessageDialog(message string, dialogType string, title string) (string, error)
```
## 贡献指南
欢迎提交 Issue 和 Pull Request!
## 许可证
本项目基于 MIT 许可证开源,详见 [LICENSE](LICENSE) 文件。