Skip to content

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

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages