Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/01walid/awesome-arabic

A curated list of awesome projects and dev/design resources for supporting Arabic computational needs.
https://github.com/01walid/awesome-arabic

List: awesome-arabic

arabic natural-language-processing nlp nlp-arabic rtl

Last synced: about 1 month ago
JSON representation

A curated list of awesome projects and dev/design resources for supporting Arabic computational needs.

Awesome Lists containing this project

README

        

# Awesome Arabic [![Awesome](https://cdn.rawgit.com/sindresorhus/awesome/d7305f38d29fed78fa85652e3a63e154dd8e8829/media/badge.svg)](https://github.com/sindresorhus/awesome)

A curated list of awesome projects, libraries, tools, fonts, and dev/design resources that are trying to enhance/support the Arabic language computational needs and improve its presence on the web.

## Programming Languages

#### C/C++
* [libitl2](https://github.com/sohaibafifi/libitl2) - A library for Islamic calendar and prayer times.
* [Qt]: [ArabicNumberToWord](https://github.com/01walid/ArabicNumberToWord), Convert numbers and amounts from numeric to Arabic words.

#### Go (Golang)
* [goarabic](https://github.com/01walid/goarabic) - a Go Lang package for dealing with Arabic text.
* [ara](https://github.com/latiif/ara) - Command line tool that displays Arabic text in terminal.

#### Java
* [NumberToArabicWords](https://github.com/bluemix/NumberToArabicWords) - Arabic numbers to words.
* [RemoveTashkeel.java](https://gist.github.com/mhashim6/7d96f7ea274c9eb7e509798a332d78ac) - Removes Arabic diacritics (tashkeel تشكيل) from any file almost instantly.
* [Prayer Times](https://github.com/HouariZegai/PrayerTimes) - Desktop application shows you the times of Muslim prayer and set an alarm (Athan) to remind you.
* [Azkar](https://github.com/AbdelrahmanBayoumi/Azkar-App) - Desktop Application shows notification for Azkar that pops-up every specific time, Calculating Muslim prayer times (for any location), and Morning and Nights Azkar with reminder.

#### Javascript
* [I18n](https://i18n.softvenue.net) - A Repository to provide arabic translation for technical terms.
* [arabicString](https://github.com/ahmads/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](http://elkebirmed.github.io/arli/) - JavaScript tools for an Arabic development.
* [bidiweb](https://github.com/hasenj/bidiweb) - Determine the base direction of paragraphs and adjust them accordingly.
* [Hijri Converter](https://github.com/dalwadani/hijri-converter) - Convert between Hijri (Um Alqura) and Gregorian [NPM](https://www.npmjs.com/package/hijri-converter).
* [Hijri.js](https://github.com/xsoh/Hijri.js) - A tool for Hijri calender (based on Umm al-Qura calculations) in Javascript.
* [jsastem](https://github.com/ejtaal/jsastem) - JavaScript Arabic Stemmer.
* [moment-hijri](https://github.com/xsoh/moment-hijri) - A Hijri calendar (based on Umm al-Qura calculations) plugin for moment.js.
* [n2words](https://github.com/forzagreen/n2words) - Convert numerical numbers to written numbers, in arabic (and other languages).
* [aln9](https://github.com/mkhDev/aln9) - A lightweight markup language designed for Arabic text.
* [circular-arabic](https://github.com/mapmeld/circular-arabic) - Write Arabic words in a circle or arc using the Canvas element
* [Oktob.js](https://github.com/Fcmam5/oktob.js) - Force typing in Arabic letters (ex: replaces "a" with "ض" for AZERTY keyboard scheme)
* [TafgeetJS](https://github.com/mmahgoub/tafgeetjs) - An NPM module to convert currency digits into written Arabic words.
* [Accents](https://github.com/Aissaoui-Ahmed/accents/packages/88968) - Provides a simple package check or remove accents from a string use CLI or function, Support multi languages.

#### PHP
* [Ar-PHP](http://www.ar-php.org/) - 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](https://thephpleague.com/ar/).

##### Laravel 5.x
* [arabicdatetime](https://github.com/maherelgamil/arabicdatetime) - Easy and useful tool to get arabic date with arabic characters for laravel 5.1.

##### Wordpress
* [Arabic-Webfonts](https://github.com/mandooox/Arabic-Webfonts) - WordPress plugin which allow you to add Arabic fonts easily to any theme without coding.

#### Python
* [ar2en](https://github.com/maherg/ar2en) - Renames Arabic files and directories into English recursively.
* [Arabish](https://github.com/amasad/arabish) - Arabic transliteration in Python. Similar to Yamli.com, Google Ta3reeb, and Microsoft Maren.
* [date-extractor](https://github.com/DanielJDufour/date-extractor) - Extracts dates from text in Arabic and other languages
* [hijra](https://github.com/ojuba-org/hijra) - Hijri Islamic Calendar utils in python.
* [PyArabic](https://pypi.python.org/pypi/PyArabic/0.4) - Arabic text tools for Python.
* [pyarabicshaping](https://github.com/behdad/pyarabicshaping) - Port of GNU FriBidi's Arabic shaping to Python.
* [pyIslam](https://github.com/abougouffa/pyIslam) - Python library to calculate prayer times, hijri date, qiblah direction and more.
* [python-arabic-reshaper](https://github.com/mpcabd/python-arabic-reshaper) - Reconstruct Arabic sentences to be used in applications that don't support Arabic.
* [ATKSPY](https://github.com/AliAbdelaal/ATKSpy) - Python wrapper for Microsoft Arabic toolkit service, it provides transliterator, speller, SARF, pos tagger, parser, NER, and even a Colloquial to Arabic Converter.

#### Ruby
* [Manshar](http://www.manshar.org/) - Arabic social publishing platform.

## CSS & RTL

CSS frameworks and resources that support RTL layout.

* [Bootstrap 2.x & 3.x RTL](http://muayyad-alsadi.github.io/bootstrap-rtl/2.x/index.html).
* [Bootstrap 3 RTL](https://github.com/morteza/bootstrap-rtl) - RTL Theme for Bootstrap v3.x.
* [Bootstrap 4 RTL](https://github.com/MahdiMajidzadeh/bootstrap-v4-rtl) - RTL Theme for Bootstrap v4.x.
* [Foundation 5](http://foundation.zurb.com/) - A CSS framework that natively supports RTL layouts.
* [MaterializeCSS](https://github.com/MahdiMajidzadeh/materialize-rtl) - MaterializeCSS supports RTL layouts.
* [UIkit](https://getuikit.com/docs/rtl) - A lightweight and modular front-end framework that supports RTL layouts.

#### LESS
* [bi-app-less](https://github.com/anasnakawa/bi-app-less) - writing bi-directional stylesheets in less

## Text rendering
* https://github.com/harfbuzz/harfbuzz - A Text shaping engine
* https://github.com/HOST-Oman/libraqm - A library for complex text layout

## Fonts

Freely available Arabic Fonts.

* [Amiri Font](http://www.amirifont.org) - a classical Arabic typeface in Naskh style for typesetting books and other running text.
* [Flat font](http://fonts.jozoor.com/flat-font/) - arabic font (Only Regular weight is available for free)..
* [Jozoor font](http://fonts.jozoor.com/jozoor-font/) - Jozoor arabic font (Only Regular weight is available for free).
* [sahl-naskh](https://github.com/khaledhosny/sahl-naskh) - A fork of Droid Arabic Naskh font fixing some of the issues in the original font.

## Browser Extensions
* [Wudooh (وضوح)](https://github.com/basshelal/Wudooh) - Chrome and Firefox extension that makes Arabic script clearer
* [Fahm](https://github.com/malikolivier/fahm) - Arabic pop-up dictionary extension for Google Chrome

## Markdown
* [Simple Markdown Editor](https://github.com/ahmadajmi/markdown-arabic) - Write Markdown in Arabic.
* [SimpleMDE - Markdown Editor (RTL)](https://github.com/imAbdelhadi/simplemde-rtl) - A simple, beautiful, and embeddable JavaScript Markdown editor. Delightful editing for beginners and experts alike. Features built-in autosaving and spell checking.

## Natural Language Processing

Libraries for working with Arabic language text and data.

#### Morphological Tools
* [UralicNLP](https://github.com/mikahama/uralicNLP) - An open-source Python library for lemmatization, morphological analysis and generation for Arabic and other languages.
* [Qutuf قطوف](https://github.com/qutuf/qutuf) - An Arabic Morphological analyzer and Part-Of-Speech tagger. The Core of a Framework for Arabic Language Processing as an Expert System.
* [AlKhalil Morpho Sys 2](http://oujda-nlp-team.net/ar/programms-ar/alkhalil-morphology-2-ar/) - A robust Arabic morpho-syntactic analyzer.
* [MADA+TOKAN](https://pdfs.semanticscholar.org/8dcc/f1749b25bf21d9208237fd2e68299615e4e0.pdf) - A Toolkit for Arabic Tokenization, Diacritization, Morphological Disambiguation, POS Tagging, Stemming and Lemmatization.
* [MADAMIRA](http://www.cs.columbia.edu/~rambow/software-downloads/MADA_Distribution.html) - A new version of MADA
* [SAMA](http://www.ldc.upenn.edu/Catalog/catalogEntry.jsp?catalogId=LDC2010L01) - Standard Arabic Morphological Analyzer (crucial to obtain the latest version of SAMA for analysis purposes)
* [BAMA](http://www.ldc.upenn.edu/Catalog/catalogEntry.jsp?catalogId=LDC2004L02) - Buckwalter's Morphological Analyzer BAMA 2.0.
* [AraMorph](http://www.nongnu.org/aramorph/) - Arabic Morphological analyzer.

#### Stemmers & Roots
* [Apache Lucene Arabic Light Stemmer](http://lucene.apache.org/core/3_0_3/api/contrib-analyzers/org/apache/lucene/analysis/ar/ArabicAnalyzer.html) A lucene analyzer that implements light-stemming as specified by: [Light Stemming for Arabic Information Retrieval](http://www.mtholyoke.edu/~lballest/Pubs/arab_stem05.pdf).
* [arabicstemmer](https://github.com/assem-ch/arabicstemmer) - Snowball-based light stemmer algorithm for Arabic, aimed mainly to improve search.
* [Khoja Stemmer](http://zeus.cs.pacificu.edu/shereen/research.htm) - Shereen Khoja Arabic stemmer (java). Another [implementation exists for the same algorithm](https://sourceforge.net/projects/arabicstemmer/) (java as well).
* [Arabic RootFinder](https://github.com/tb0yd/rootfinder) - Root finding using Jupyter Notebook, Scikit-learn, and neural network in Keras.
#### Arabic text vocalization
* [Shakkelha](https://github.com/AliOsm/shakkelha) - Open source Arabic text diacritization recurrent neural network software written in Python, website: https://shakkelha.herokuapp.com.
* [Mishkal](https://github.com/linuxscout/mishkal) - Arabic text vocalization software written in Python, website: http://tahadz.com/mishkal.

#### Verb conjugation
* [Arabic-Conjugator](https://github.com/awillborn/Arabic-Conjugator) - Conjugates MSA verbs given three root letters, verb form, tense, and pronoun.
* [Qutrub](http://qutrub.arabeyes.org/) - FOSS Arabic verbs conjugator

#### Spell Checkers
* [YaraSpell](https://github.com/linuxscout/yaraspell) - simplified Arabic spell checker.
* [Aya Spell](https://gitlab.com/arabeyes-dev/ayaspell) - spellchecking (hunspell-ar), thesaurus (thesaurus-ar) and Morphological lexicon (Grammar-ar).

#### Calligraphy
* [Calliar](https://github.com/ARBML/Calliar) - Online Handwritten Dataset for Arabic Calligraphy.

#### Others
* [Arabic NLP](https://github.com/SemanticFrontiers/ArabicNLP) - Collection of various Arabic NLP and Text Processing Scripts and Utilities.
* [arabic_nlp](https://github.com/alexrutherford/arabic_nlp) - Tools to normalise and derive sentiment from Arabic text.
* [Minteeq - مِنطيق](http://arabic-tools.github.io/ar-espeak/) - Opensource/free Arabic text to speech solution based on eSpeak.
* [Python NLTK](https://github.com/nltk/nltk)
* Ruby-based [nlp_arabic](https://github.com/othmanela/nlp_arabic) - A ruby gem that contains Natural Language Processing tools for Arabic.
* [Ya (ي) Language](https://github.com/yalang/ya) - An open source programming language in which you can code python in Arabic language.
* [Shakkala Project مشروع شكّالة](https://github.com/Barqawiz/Shakkala) - A neural network for Arabic text vocalization to automatically form Arabic characters.
* [Arabic Keyboard](https://github.com/lokutech/Arabic-Keyboard) - Online Arabic keyboard. Beautiful clean design, no ads.
* [Arabic Speech Corpus](http://ar.arabicspeechcorpus.com/) - Database for automated Arabic speech.
* [Tarmeez](https://sourceforge.net/projects/tarmeez) - binary data format for etymological Arabic system.

## GIT

* [Ar cheat-sheet](http://www.git-tower.com/blog/git-cheat-sheet-ar) - Git Cheat Sheet in Arabic.
* [ArabicGit](http://www.arabicgit.com/) - Learn Git in Arabic.
* [simple-guide](http://www.arabicgit.com/simple-guide/) - A simple guide in Arabic to get started using Git.

## Dictionaries

* [Arabeyes](http://www.arabeyes.org/%D8%A7%D9%84%D9%82%D8%A7%D9%85%D9%88%D8%B3_%D8%A7%D9%84%D8%AA%D9%82%D9%86%D9%8A) - Arabic Tech dictionary.
* [arabterm](https://github.com/forzagreen/arabterm) - Extract of [arabterm.org](http://www.arabterm.org/) technical dictionnaries. 150k+ entries in arabic, english, french, and german.
* [en_ar_dict](https://github.com/devjustly/en_ar_dict) - English Arabic dictionary written in python and Qt4 (pyside).
* [FuzzyArabicDict](https://github.com/michelleful/FuzzyArabicDict) - a dictionary app that allows you to look up Arabic words in transliteration.
* [Nibras](https://github.com/01walid/Nibras) - French-Arabic tech terms for students.

## Data

Data, databases and content related or useful to Arabic projects.

#### Voice Corpus
* [Arabic Speech Corpus](http://en.arabicspeechcorpus.com) - South Levantine Arabic (Damascian accent) speech corpus. Package contains 1813 .wav files containing spoken utterances accompanied with files containing the text utterances and phoneme labels

#### Verb conjugation
* [LABR](https://github.com/mohamedadaly/labr) - Large Scale Arabic Book Reviews Dataset.
* [Large Arabic Resources For Sentiment Analysis](https://github.com/hadyelsahar/large-arabic-sentiment-analysis-resouces).
* [Arabic Stop Words](https://github.com/mohataher/arabic-stop-words) - Long list of Arabic stop words combined from different sources.

#### Arabic Text Diacritization
* [Arabic Text Diacritization Corpus](https://github.com/AliOsm/arabic-text-diacritization) - Arabic text diacritization corpus with comparisons for different systems.
* [Arabic Text Diacritization Corpus Extension](https://github.com/AliOsm/shakkelha) - Arabic text diacritization corpus extension.

#### Arabic Captions
* [Arabic COCO](https://github.com/canesee-project/Arabic-COCO) - MS COCO Dataset Captions translated in Arabic using Google's Advanced Cloud Translation API.

## Awesome content

* [ar-python](http://www.ar-python.com/) - Learn Python in Arabic.
* [Colors Lab](http://www.colorslab.net/) - UX/UI philosophy in Arabic.
* [Hsoub Academy](http://academy.hsoub.com/) - Hight quality tutorials about programing, DevOps, UX and Design, Freelancing...
* [Hsoub I/O](https://io.hsoub.com/) - The Arabic Reddit-like.
* [informatic-ar](http://informatic-ar.com/) - Arabic content about programming concepts, algorithms, AI ..etc.

* [Ruby 3arabi](https://ruby3arabi.herokuapp.com/) - Learn Ruby in Arabic.

## Communities
* [LinuxAC](http://www.linuxac.org/) - Linux Arabic Community
* [iSecur1ty](http://www.isecur1ty.org/) - Arabs Security and Ethical hacking community.

## ebooks
* [Nextjs-Arabic-Handbook](https://github.com/imAbdelhadi/nextjs-arabic-handbook) - كتيّب تعلم Next.js بالعربية

## Miscellaneous

Useful libraries or tools that don't fit in the categories above.

* [SemVer (Semantic Versioning)](http://semver.org/lang/ar/) specs in Arabic.
* [Thawab](https://github.com/ojuba-org/thawab) - Thawab Arabic/Islamic encyclopedia system.
* [Alpine.js 2.x documentation in Arabic](https://github.com/imAbdelhadi/alpinejs) - ترجمة توثيق مكتبة Alpine.js باللغة العربية.
* [Yamli](https://www.yamli.com/) - A Smart Arabic Keyboard that allows users to type Arabic without an Arabic keyboard

# Contributing

Your contributions are welcome, just send me a Pull Request!.