A powerful iOS application that automatically detects and blocks spam SMS messages using customizable rules and regex patterns. Keep your inbox clean and protected from unwanted messages.
| Home Screen | Settings |
|---|---|
SMSpam analyzes incoming SMS messages on your device and identifies spam using multiple detection methods including keyword filtering, regex patterns, sender analysis, and short URL detection. All processing happens locally on your device - no data is sent to external servers.
- Automatic Spam Detection - Real-time analysis of SMS messages
- Whitelist Management - Add trusted contacts that will never be blocked
- Custom Regex Rules - Create powerful patterns to match spam content
- Keyword Filtering - Block messages containing specific words
- Short URL Detection - Identify suspicious shortened URLs
- Spam Logging - Track blocked messages with detailed information
- Banking Scams - Fake banking and financial fraud
- Gambling Promotions - Casino and betting spam
- Suspicious Links - Messages with shortened URLs
- General Spam - Other unwanted content
- 7 Languages - Turkish, English, German, French, Spanish, Chinese, Japanese
- Modern UI - Native iOS design with SwiftUI
- Light/Dark Mode - Automatic theme support
- Privacy First - All processing happens on-device
- iOS 16.0 or later
- Xcode 15.0 or later
- Swift 5.9
- Clone the repository
git clone https://github.com/tubekinan/SMSpam.git- Open in Xcode
cd SMSpam
open SMSpam.xcodeproj-
Configure signing
- Select the SMSpam target
- Go to "Signing & Capabilities"
- Select your development team
- Enable "Automatic signing"
-
Build and run
- Select your target device or simulator
- Press
Cmd + Rto build and run
The home screen displays:
- App logo and name
- Total spam count
- Today's spam count
- Recent spam logs (last 5)
- Filter by spam type
Access settings from the gear icon:
Switch between 7 supported languages:
- Turkish (Türkçe)
- English
- German (Deutsch)
- French (Français)
- Spanish (Español)
- Chinese (中文)
- Japanese (日本語)
Add trusted phone numbers or patterns:
- Sender contains text
- Sender regex patterns
Customize spam detection:
- Blocked Senders - Phone numbers or text to block
- Sender Regex - Patterns for sender matching
- Content Regex - Patterns for message body matching
- Keywords - Words that indicate spam
- Short URL Patterns - Shortened URL domains to block
- Maximum spam log entries (default: 200)
- Older logs are automatically deleted
Common Turkish bank names and spam senders:
- xbank, ybank, ybankasi, ,
- Turkish spam number format:
(\+90[\s\-]?\(?850\)?|0850|90850) - Corrupted Turkish text:
[A-Z]+i[A-Z]+
- bonus, freespins, freebet, jackpot, slot, çekim, bahis, yatırım
- t2m.io, bit.ly, tinyurl.com, goo.gl, ow.ly, rb.gy, cutt.ly
SMSpam/
├── SMSpam/
│ ├── ContentView.swift # Main UI components
│ ├── LanguageManager.swift # Localization handling
│ ├── SMSpamApp.swift # App entry point
│ ├── Assets.xcassets/ # Icons and images
│ ├── de.lproj/ # German translations
│ ├── en.lproj/ # English translations
│ ├── es.lproj/ # Spanish translations
│ ├── fr.lproj/ # French translations
│ ├── ja.lproj/ # Japanese translations
│ ├── tr.lproj/ # Turkish translations
│ └── zh-Hans.lproj/ # Chinese translations
├── SpamFilterExtension/ # Message filtering extension
└── SMSpam.xcodeproj/ # Xcode project file
To add a new language:
- Create a new
.lprojfolder (e.g.,pt.lproj) - Copy
Localizable.stringsfrom an existing language - Translate all key-value pairs
- Add the language to
LanguageManager.swift:
("pt", "Portuguese", "Português")SMSpam processes all messages locally on your device. No personal data is sent to external servers. All analysis happens on-device to protect your privacy.
Contributions are welcome! Please feel free to submit a Pull Request.
- Fork the repository
- Create your feature branch (
git checkout -b feature/AmazingFeature) - Commit your changes (
git commit -m 'Add AmazingFeature') - Push to the branch (
git push origin feature/AmazingFeature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- GitHub: @tubekinan
- Project: https://github.com/tubekinan/SMSpam
- SwiftUI for the modern UI framework
- Apple Message Filter Extension API
- All contributors and translators