Thanks for your interest! Here's everything you need to get started.
git clone https://github.com/delee03/DevTranslator.git
cd DevTranslator
swift build
swift test --enable-swift-testing --disable-xctestRequirements: macOS 13+, Swift 5.9+ (Xcode 15+ or Command Line Tools)
- Fork the repo and create a branch (
feature/...,fix/...,docs/...) - Make your changes — keep commits focused
- Make sure tests pass
- Open a PR against
main
| Module | What | Difficulty |
|---|---|---|
TranslationEngine |
Google Translate API client, LRU cache | Easy |
Shared |
Config, logging, constants | Easy |
DevTranslator |
CLI entry point, subcommands | Medium |
We use Swift Testing (not XCTest):
import Testing
@testable import TranslationEngine
@Test func cacheEvictsLRU() {
let cache = TranslationCache(maxSize: 2)
// ...
#expect(cache.get(text: "old", from: "en", to: "vi") == nil)
}swift test --enable-swift-testing --disable-xctest- Follow Swift API Design Guidelines
- Use
async/await, not completion handlers - No force-unwraps (
!) in production code - Minimize dependencies — discuss new ones in an issue first
- One feature/fix per PR
Open an issue with: what happened, steps to reproduce, your macOS version, terminal app, and devtranslator --version.
Contributions are licensed under MIT.