arabic_name_transliterator 0.1.1
arabic_name_transliterator: ^0.1.1 copied to clipboard
A comprehensive Flutter package to transliterate Arabic names (Saudi, Egyptian) to English with a large database of common names and automatic transliteration for unknown names.
A powerful Flutter package for accurate transliteration of Arabic names (Saudi & Egyptian) into English. Includes a large curated database + an intelligent fallback algorithm for names not in the list.
✨ Features
🔠 Accurate transliteration engine (smart algorithm for unseen names)
📚 Large verified name database (Saudi & Egyptian most common names)
🧩 Multi-word name support (e.g., عبدالرحمن، محمد علي أحمد)
⚡ Simple, developer-friendly API
🔍 Check if a name exists in the common names list
💡 High accuracy based on real-world usage
📦 Installation
Add to your pubspec.yaml:
dependencies: arabic_name_transliterator: ^0.0.1
Then run:
flutter pub get
🚀 Usage 🔹 Transliterate a single name import 'package:arabic_name_transliterator/arabic_name_transliterator.dart';
void main() { print(ArabicNameTransliterator.transliterate('محمد')); // Mohammed print(ArabicNameTransliterator.transliterate('فاطمة')); // Fatima print(ArabicNameTransliterator.transliterate('أحمد علي')); // Ahmed Ali }
🔹 Transliterate a list of names List
print(translated); // [Mohammed, Ahmed, Ali, Fatima]
🔹 Check if the name exists in the database bool exists = ArabicNameTransliterator.hasCommonName('محمد'); // true bool notExists = ArabicNameTransliterator.hasCommonName('اسمغيرموجود'); // false
🔹 Get the stored translation (without fallback) String? translation = ArabicNameTransliterator.getCommonName('فاطمة'); // Fatima
String? t2 = ArabicNameTransliterator.getCommonName('غيرموجود'); // null
🔹 Use inside a Flutter Widget class NameCard extends StatelessWidget { final String arabicName;
const NameCard({super.key, required this.arabicName});
@override Widget build(BuildContext context) { final englishName = ArabicNameTransliterator.transliterate(arabicName);
return Card(
child: ListTile(
title: Text(arabicName),
subtitle: Text(englishName),
),
);
} }
🔹 Multi-word / compound names
print(ArabicNameTransliterator.transliterate('عبدالله'));
// Abdullah
print(ArabicNameTransliterator.transliterate('عبدالرحمن'));
// Abdulrahman
print(ArabicNameTransliterator.transliterate('محمد علي أحمد')); // Mohammed Ali Ahmed
📘 Supported Names
The package includes thousands of verified names:
👨🦱 Male Names (Saudi & Egyptian)
Examples: محمد، أحمد، علي، خالد، عبدالله …etc
👩 Female Names (Saudi & Egyptian)
Examples: فاطمة، عائشة، مريم، سارة، نورا …etc
🧩 Compound Names
عبدالرحمن، عبدالعزيز، عبدالملك …etc
If a name is not found in the database, a smart transliteration algorithm is applied automatically.
🤝 Contributing
Contributions are welcome! If you have more names to add or want to improve the algorithm, feel free to open an Issue or Pull Request.
📄 License
Distributed under the MIT License. See the LICENSE file for more details.
💬 Support
If you encounter any issues or have suggestions, please open an Issue on GitHub.