# Awesome Arabic العربية

A curated list of amazingly awesome Arabic supporting tools, fonts, and development resources.

## Programming Languages

Programming Language specific resources that support Arabic

#### C/C++

- libitl2 - A library for Islamic calendar and prayer times.
- [Qt]: ArabicNumberToWord, Convert numbers and amounts from numeric to Arabic words.

#### Go (Golang)

- goarabic - a Go Lang package for dealing with Arabic text.

#### Java

- NumberToArabicWords - Arabic numbers to words.
- RemoveTashkeel.java - Removes Arabic diacritics (tashkeel تشكيل) from any file almost instantly.

#### Javascript

- Typeahead.js
- Fix Arabic Numbers - Simple Moment.js style library that changes Arabic numbers (١٢٣…) into (123…)
- arabicString - A Javascript library that extends the native String object with methods to help when dealing with Arabic strings for node and the browser.
- Arli - JavaScript tools for an Arabic development.
- bidiweb - Determine the base direction of paragraphs and adjust them accordingly.
- Hijri.js - A tool for Hijri calender (based on Umm al-Qura calculations) in Javascript.
- jsastem - JavaScript Arabic Stemmer.
- moment-hijri - A Hijri calendar (based on Umm al-Qura calculations) plugin for moment.js.
- aln9 - A lightweight markup language designed for Arabic text.
- circular-arabic - Write Arabic words in a circle or arc using the Canvas element
- Oktob.js - Force typing in Arabic letters (ex: replaces “a” with “ض” for AZERTY keyboard scheme)

#### PHP

- Ar-PHP - A set of PHP classes developed to enhance Arabic web applications by providing set of tools includes stem-based searching, translitiration, soundex, Hijri calendar, charset detection and converter, spell numbers, keyboard language, Muslim prayer time, auto-summarization, and more…
- The PHP League Website in Arabic.
- arabicdatetime - Easy and useful tool to get arabic date with arabic characters for laravel 5.1.

#### Python

- ar2en - Renames Arabic files and directories into English recursively.
- Arabish - Arabic transliteration in Python. Similar to Yamli.com, Google Ta3reeb, and Microsoft Maren.
- date-extractor - Extracts dates from text in Arabic and other languages
- hijra - Hijri Islamic Calendar utils in python.
- PyArabic - Arabic text tools for Python.
- pyarabicshaping - Port of GNU FriBidi’s Arabic shaping to Python.
- pyIslam - Python library to calculate prayer times, hijri date, qiblah direction and more.
- python-arabic-reshaper - Reconstruct Arabic sentences to be used in applications that don’t support Arabic.
- Django with Arabic Settings

#### Ruby

- Manshar - Arabic social publishing platform.

## Natural Language Processing

Tools that either are made for Arabic or support Arabic * Apache Lucene Arabic Light Stemmer A lucene analyzer that implements light-stemming as specified by: Light Stemming for Arabic Information Retrieval. * arabicstemmer - Snowball-based light stemmer algorithm for Arabic, aimed mainly to improve search. * Khoja Stemmer - Shereen Khoja Arabic stemmer (java). Another implementation exists for the same algorithm (java as well). * Mishkal - Arabic text vocalization software written in Python, website: http://tahadz.com/mishkal. * Arabic-Conjugator - Conjugates MSA verbs given three root letters, verb form, tense, and pronoun. * Qutrub - FOSS Arabic verbs conjugator * YaraSpell - simplified Arabic spelling checker. * Arabic NLP - Collection of various Arabic NLP and Text Processing Scripts and Utilities. * arabic_nlp - Tools to normalise and derive sentiment from Arabic text. * Minteeq - مِنطيق - Opensource/free Arabic text to speech solution based on eSpeak. * Python NLTK * Ruby-based nlp_arabic - A ruby gem that contains Natural Language Processing tools for Arabic.

## CSS

CSS resources that support RTL languages * Bootstrap 2.x & 3.x RTL. * Bootstrap 3 RTL - RTL Theme for Bootstrap v3.x. * Foundation 5 - A CSS framework that natively supports RTL layouts. * bi-app-less - writing bi-directional stylesheets in less

## Fonts

Modern arabic web fonts * Frutiger Arabic * Amiri Font - a classical Arabic typeface in Naskh style for typesetting books and other running text. * Flat font - arabic font (Only Regular weight is available for free).. * Jozoor font - Jozoor arabic font (Only Regular weight is available for free). * sahl-naskh - A fork of Droid Arabic Naskh font fixing some of the issues in the original font.

## Datasets

Open Arabic Datasets * LABR - Large Scale Arabic Book Reviews Dataset. * Large Arabic Resources For Sentiment Analysis. * Arabic Stop Words - Long list of Arabic stop words combined from different sources.

## Learning

Learning materials written for Arabic audiences * Ar cheat-sheet - Git Cheat Sheet in Arabic. * ArabicGit - Learn Git in Arabic. * simple-guide - A simple guide in Arabic to get started using Git. * ar-python - Learn Python in Arabic. * Colors Lab - UX/UI philosophy in Arabic. * Hsoub Academy - Hight quality tutorials about programing, DevOps, UX and Design, Freelancing… * informatic-ar - Arabic content about programming concepts, algorithms, AI ..etc. * Ruby 3arabi - Learn Ruby in Arabic.

## Miscellaneous

A mix of awesome things * Arabic Typography * OpenMapTiles - world map tiles in Arabic * Arabic-Webfonts - WordPress plugin which allow you to add Arabic fonts easily to any theme without coding. * Simple Markdown Editor - Write Markdown in Arabic.

# Contribute & Keep This Alive!

## العربية