Skip to content

prgding/EnNotes

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 

Repository files navigation

EnNotes

一个帮你「精读」英文文章的极简 iOS App —— 点词查词典、逐段朗读、本地保存。

EnNotes 是一个纯本地、零依赖、不联网的 iOS 英语阅读工具。把一篇英文文章粘贴进来,它会自动按段落拆分,让你可以点任意单词查系统词典、逐段或整篇朗读、随时复制段落。所有文章只保存在你自己的设备上。

功能

  • 📋 导入文章:粘贴或手动输入一篇英文文章,自动按段落拆分
  • 👆 点词查词:点正文里任意单词,弹出 iOS 系统词典释义(UIReferenceLibraryViewController
  • 🔊 朗读:逐段朗读或整篇朗读,默认英式发音(AVSpeechSynthesizer,en-GB)
  • 📑 分段阅读:每段独立成卡片,可单独复制
  • 粗体渲染:支持 **xxx** Markdown 粗体
  • 💾 本地保存:文章以 JSON 存在 App 沙盒(Application Support/EnNotes/notes.json),不联网、不上传

技术栈

  • SwiftUI + UIKit(用 UIViewRepresentable 实现可点词的文本视图)
  • AVFoundation(文字转语音)
  • 系统词典 UIReferenceLibraryViewController
  • 纯本地 JSONEncoder / JSONDecoder 持久化,无第三方依赖、无网络请求

运行要求

  • Xcode 26 及以上
  • iOS 26 及以上(Deployment Target)

构建运行

git clone https://github.com/prgding/EnNotes.git
cd EnNotes
open EnNotes.xcodeproj

在 Xcode 里选择 EnNotes scheme,选一个模拟器或真机,按 ⌘R 运行。

项目结构

EnNotes/
├── EnNotesApp.swift           # App 入口
├── ContentView.swift          # 文章列表
├── NoteEditorView.swift       # 阅读 / 朗读 / 查词主界面
├── ArticleEditView.swift      # 导入 / 编辑文章
├── ParagraphReaderView.swift  # 可点词的段落视图(UIKit)
├── DictionaryLookupView.swift # 系统词典弹窗
├── SpeechController.swift     # 朗读控制(AVSpeechSynthesizer)
├── Note.swift                 # 数据模型 + Markdown 粗体解析
├── NotesStore.swift           # 本地存储
└── Assets.xcassets            # 图标 / 配色

说明

个人自用项目,iOS only。

About

iOS app for close-reading English articles — tap any word for a dictionary definition, read paragraphs aloud, all stored locally. SwiftUI + UIKit.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages