Skip to content
teamsazenPublic

About

Asmaul Husna - The 99 Beautiful Names of Allah Subhanahu Wata'aala.

Topics

Resources

Stars

12 stars

Watchers

0 watching

Forks

Repository files navigation

99 Names - Asmaul Husna

99 Names - Asmaul Husna

The 99 beautiful names of Allah. Arabic, English and Urdu. Fully offline.

Get it on Google Play

The 99 beautiful names of Allah — Arabic, transliteration, English and Urdu meanings, with a short reflection for each. Fully offline: no account, no network permission, no analytics.

  • Package / bundle ID: com.muzamil.asmaulhusna
  • Themes: System, Light, Dark (ink blue, ivory + bronze)
  • Content: lib/src/data/names.dart

Screenshots

Browse all 99 Names in Arabic, English and Urdu Read Ar-Rahman with its meaning and reflection Reflect on As-Sabur, The Most Patient Return to saved favourite Names Search Names by meaning Browse the Names in a grid Read comfortably with the dark theme Customize appearance and Arabic text size

For reproducible app captures and Play Store artwork, see the screenshot guide.

Fonts & credits

Font Used for Source Licence
Jameel Noori Nastaleeq Urdu urdufonts.net Free of charge for Urdu lovers
PDMS Saleem Quran Arabic urdunigaar.com © 2001 Pakistan Data Management Services
Google Sans Text Google Fonts SIL OFL 1.1
Boldonse Titles Google Fonts SIL OFL 1.1

The same credits appear in the app under Settings → Fonts & credits.

assets/fonts/ holds copies trimmed to exactly what the app draws (about 350 KB in total; Jameel Noori Nastaleeq alone goes from 10.5 MB to 75 KB). After changing any text in lib/, download the full fonts into tool/fonts_src/ (see its README) and regenerate:

pip install fonttools uharfbuzz
python3 tool/subset_fonts.py

The script lays out every Urdu string with HarfBuzz, keeps only the glyphs used, and checks the trimmed font lays them out identically.

App icon

The icon uses the approved stacked Urdu اسماء الحسنیٰ wordmark: outlined Jameel Noori Nastaleeq lettering in muted bronze on ink blue. The same AppLogo widget appears in Settings → About and generates the native icons. The vector master and usage notes live in design/brand/.

To update the vector geometry and regenerate every icon:

python3 tool/icon/build_wordmark.py
tool/icon/make_icons.sh

The first command requires fonttools; the second requires Flutter and ImageMagick. Exports include iOS icons, Android legacy/adaptive/themed icons, the Play Store icon (store/app_icon.png), website icons and the README asset. After icon changes, also run tool/screenshots/make_screenshots.sh so screenshots show the current identity.

Website

website/ is the landing page, live at https://99.teamsazen.com (Cloudflare Pages). node build.mjs fills src/index.html with all 99 Names read from lib/src/data/names.dart, so the site's Names section never drifts from the app, writes one page per Name at /names/<name> from src/name.html (the two Names transliterated Al-Majid get their number in the URL: al-majid-48, al-majid-65) and generates sitemap.xml with every page, and copies public/ (fonts from assets/fonts/, screenshots) and the privacy policy from docs/privacy-policy/ into dist/. The privacy policy URL for Google Play (and any later store) is https://99.teamsazen.com/privacy; edit docs/privacy-policy/index.html and redeploy to change it. Deploy with cd website && npm run deploy. Arabic and Urdu use the app's trimmed fonts, so any new Arabic or Urdu text on the site must already exist in the app; Boldonse and Google Sans are full copies.

The site uses the Sazen studio design shared with teamsazen.com and the other app sites: a floating glass header that always stays in view, full-width sections, the app's ivory, ink blue and bronze in light mode and pure black in dark mode, and a dark footer that links back to https://teamsazen.com. Styles live in website/public/styles.css (also used by the privacy page), motion and the Names search in website/public/site.js, with Lenis (MIT) in website/public/js/ and Plus Jakarta Sans (SIL Open Font License) self-hosted in website/public/fonts/. Nothing is loaded from other servers.

Release

flutter build apk --release --split-per-abi
flutter build appbundle --release
flutter build ipa --release

Android release builds are still signed with the debug key — add a signing config in android/app/build.gradle.kts before publishing.

License & Branding

The source code is licensed under MIT: use, modify, and share all or part of it, including commercially, while keeping the required copyright and license notices.

The 99 Names name, logos, app icons, and branded artwork are not licensed for reuse as your own app branding. Published forks should use their own identity unless permission is granted. See the branding policy; third-party content retains its own terms.

99 Names is fully free. To improve the official app under the 99 Names name, contributions here are always welcome.

Contributing

Contributions are welcome! Open an issue or send a pull request.

Contributors

teamsazen

About

Asmaul Husna - The 99 Beautiful Names of Allah Subhanahu Wata'aala.

Topics

Resources

Stars

12 stars

Watchers

0 watching

Forks

Contributors

Languages