arabic_formaters 1.0.0 copy "arabic_formaters: ^1.0.0" to clipboard
arabic_formaters: ^1.0.0 copied to clipboard

A lightweight, powerful Dart extension package designed to simplify common tasks when dealing with Arabic content in Flutter and Dart applications.

Arabic Formaters #

A lightweight, powerful Dart extension package designed to simplify common tasks when dealing with Arabic content in Flutter and Dart applications.

Features ✨ #

  • Transliteration: Convert Arabic names and strings into English-friendly usernames/text.
  • Validation: Easily check if a character belongs to the Arabic alphabet.
  • Number Formatting: Shorten large numbers with Arabic suffixes (e.g., 10K -> 10ألف).
  • Time Ago (Arabic): Display relative time (e.g., "5 minutes ago") in clean, concise Arabic.
  • Date Recency: Quickly check if a DateTime object falls within a specific recent range.

Installation 💻 #

Add arabic_helpers (or your package name) to your pubspec.yaml file:

dependencies:
  arabic_helpers: ^latest_version


Usage 🛠️ #

1. String Extensions (Transliteration & Validation) #

Convert Arabic text to Latin characters for URLs or usernames.

import 'package:arabic_helpers/arabic_helpers.dart';

void main() {
  String name = "محمد";
  print(name.convertArabicToUser()); // Output: mohamad

  String char = "أ";
  print(char.isArabicCharacter()); // Output: true
}

2. Number Formatting #

Format large integers into a readable Arabic format.

void main() {
  int subscribers = 5000;
  print(subscribers.formatNumbers()); // Output: ٥ آلاف
  
  int views = 2000000;
  print(views.formatNumbers()); // Output: ٢ م
}

3. DateTime Extensions #

Get human-readable relative time in Arabic or check if a date is "new".

void main() {
  DateTime postDate = DateTime.now().subtract(Duration(hours: 2));

  // Show as "ساعتين"
  print(postDate.showRecentTimeInArabic()); 

  // Check if date is within the last 7 days (default)
  print(postDate.isNewDate()); // Output: true
  
  // Custom range: Check if within last 2 days
  print(postDate.isNewDate(days: 2)); 
}


Reference 📖 #

String Extensions #

Method Return Type Description
convertArabicToUser() String Maps Arabic letters to English phonetics.
isArabicCharacter() bool Returns true if the string is a single Arabic character.

Integer Extensions #

Method Return Type Description
formatNumbers() String Appends 'ألف' for thousands and 'م' for millions.

DateTime Extensions #

Method Return Type Description
showRecentTimeInArabic() String Returns formatted string like "10 دقائق" or "3 يوم".
isNewDate({int? days}) bool Checks if the date is within the specified day count.

Dependencies 📦 #

This package uses:

  • intl: For advanced date formatting.
1
likes
160
points
57
downloads

Documentation

API reference

Publisher

unverified uploader

Weekly Downloads

A lightweight, powerful Dart extension package designed to simplify common tasks when dealing with Arabic content in Flutter and Dart applications.

Repository (GitHub)
View/report issues

License

MIT (license)

Dependencies

flutter, intl

More

Packages that depend on arabic_formaters