An open API service indexing awesome lists of open source software.

https://github.com/ygsgdbd/vastwords

πŸ“š A macOS vocabulary app that helps you collect and learn English words from daily reading, featuring clipboard monitoring and system dictionary integration.
https://github.com/ygsgdbd/vastwords

clipboard combine dictionary education macos menubar-app offline offline-first productivity swift swifterswift swiftui tuist vocabulary-learning

Last synced: 3 months ago
JSON representation

πŸ“š A macOS vocabulary app that helps you collect and learn English words from daily reading, featuring clipboard monitoring and system dictionary integration.

Awesome Lists containing this project

README

        

# VastWords πŸ“š


VastWords Logo

[![GitHub release (latest by date)](https://img.shields.io/github/v/release/ygsgdbd/VastWords)](https://github.com/ygsgdbd/VastWords/releases)
[![GitHub](https://img.shields.io/github/license/ygsgdbd/VastWords)](https://github.com/ygsgdbd/VastWords/blob/main/LICENSE)
[![Platform](https://img.shields.io/badge/platform-macOS%2013%2B-brightgreen)](https://github.com/ygsgdbd/VastWords)
[![Swift](https://img.shields.io/badge/Swift-5.9-orange.svg)](https://swift.org)
[![Xcode](https://img.shields.io/badge/Xcode-15.0%2B-blue)](https://developer.apple.com/xcode/)
[![SwiftUI](https://img.shields.io/badge/SwiftUI-3.0-blue)](https://developer.apple.com/xcode/swiftui)

[πŸ‡¨πŸ‡³ δΈ­ζ–‡ζ–‡ζ‘£](README_zh.md) | English

VastWords is a macOS vocabulary application designed to help you quickly collect and learn English words encountered during daily reading. It automatically monitors the clipboard for English words and provides system dictionary lookup functionality. The application runs completely offline, with all data stored locally to ensure your privacy.


VastWords Preview

## πŸ“₯ Installation

### 🍺 Via Homebrew (Recommended)

```bash
brew install ygsgdbd/tap/vastwords
```

### πŸ’» Manual Installation

1. Download the latest release from the [Releases](https://github.com/ygsgdbd/VastWords/releases) page
2. Drag VastWords.app to your Applications folder
3. Launch VastWords from Applications or Spotlight

## πŸ›  Tech Stack

- SwiftUI + MVVM Architecture
- CoreData + CoreStore for Data Persistence
- Vision Framework for OCR
- Natural Language for Lemmatization
- Combine + Async/Await for Asynchronous Operations
- Tuist for Project Management
- SwiftLint + SwiftFormat for Code Standards

## ✨ Features

- πŸ”„ Smart Monitoring
- Automatic clipboard text monitoring
- Image OCR support (using system Vision framework, offline and secure)
- Automatic English word extraction
- Smart word lemmatization (e.g., running β†’ run, cities β†’ city)
- πŸ“š Integrated macOS system dictionary for real-time word definitions
- ⭐️ Star important words
- πŸ” Word search and filtering
- πŸ“Š 24-hour word collection statistics
- πŸ“₯ Word list export
- πŸš€ Launch at login support
- ⭐️ High-performance storage
- 🎯 Performance optimized

## πŸ” Privacy & Security

- πŸ”’ Completely offline operation
- πŸ’Ύ Local data storage only
- πŸ›‘οΈ Uses system built-in features
- 🀝 No user data collection
- πŸ“± Minimal permissions required

## ⚠️ Limitations

- Text length limit: 10,000 characters
- Word length limit: 2-45 characters
- Automatic filtering of common function words (e.g., a, the, in)

## πŸ’» System Requirements

- macOS 13.0 or later
- Apple Silicon or Intel processor

## πŸ”§ Development Setup

- Xcode 15.0+
- Swift 5.9+
- SwiftUI
- [Tuist](https://tuist.io) 3.0+

## πŸ“¦ Dependencies

- [CoreStore](https://github.com/JohnEstropia/CoreStore)
- [Defaults](https://github.com/sindresorhus/Defaults)
- [SwifterSwift](https://github.com/SwifterSwift/SwifterSwift)
- [SwiftUIX](https://github.com/SwiftUIX/SwiftUIX)

## πŸ“„ License

This project is licensed under the MIT License. See the [LICENSE](LICENSE) file for details.

### πŸ“ Third-Party Licenses

This project uses the following open source components:

- [CoreStore](https://github.com/JohnEstropia/CoreStore) - MIT License
- [Defaults](https://github.com/sindresorhus/Defaults) - MIT License
- [SwifterSwift](https://github.com/SwifterSwift/SwifterSwift) - MIT License
- [SwiftUIX](https://github.com/SwiftUIX/SwiftUIX) - MIT License