{"id":5610,"date":"2026-09-02T22:17:58","date_gmt":"2026-09-02T22:17:58","guid":{"rendered":"https:\/\/anasalassi.com\/projects\/sakenah\/"},"modified":"2026-09-02T22:17:58","modified_gmt":"2026-09-02T22:17:58","slug":"sakenah","status":"publish","type":"page","link":"https:\/\/anasalassi.com\/ar\/projects\/sakenah\/","title":{"rendered":"\u0633\u0643\u064a\u0646\u0629 \u2014 \u0645\u0646\u0635\u0629 \u0645\u0648\u0627\u0642\u064a\u062a \u0627\u0644\u0635\u0644\u0627\u0629"},"content":{"rendered":"<div data-elementor-type=\"wp-page\" data-elementor-id=\"5610\" class=\"elementor elementor-5610\" data-elementor-post-type=\"page\">\n\t\t\t\t<span id=\"aa-main\" tabindex=\"-1\"><\/span><div class=\"elementor-element elementor-element-27b0a32 aa-cs-hero e-flex e-con-boxed e-con e-parent\" data-id=\"27b0a32\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f0ef352 elementor-widget elementor-widget-html\" data-id=\"f0ef352\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<a class=\"aa-cs-back\" href=\"https:\/\/anasalassi.com\/ar\/projects\/\"><svg width=\"15\" height=\"15\" viewbox=\"0 0 24 24\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\" aria-hidden=\"true\"><path d=\"M15 18l-6-6 6-6\"\/><\/svg>\u0643\u0644 \u0627\u0644\u0623\u0639\u0645\u0627\u0644<\/a>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-14f7036 elementor-widget elementor-widget-html\" data-id=\"14f7036\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<span class=\"aa-cs-status aa-cs-status--live\"><span class=\"aa-cs-status__dot\" aria-hidden=\"true\"><\/span>\u0646\u0633\u062e\u0629 \u062a\u062c\u0631\u064a\u0628\u064a\u0629 \u0645\u0628\u0627\u0634\u0631\u0629<\/span>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-2a3deca aa-cs-h1 elementor-widget elementor-widget-heading\" data-id=\"2a3deca\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h1 class=\"elementor-heading-title elementor-size-default\">\u0633\u0643\u064a\u0646\u0629<\/h1>\t\t\t\t<\/div>\n\t\t<span id=\"aa-main\" tabindex=\"-1\"><\/span>\t\t<div class=\"elementor-element elementor-element-9f166b7 aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"9f166b7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>\u062a\u0637\u0628\u064a\u0642 \u062b\u0646\u0627\u0626\u064a \u0627\u0644\u0644\u063a\u0629 \u064a\u0639\u0631\u0636 \u0645\u0648\u0627\u0642\u064a\u062a \u0627\u0644\u0635\u0644\u0627\u0629 \u062d\u0633\u0628 \u0627\u0644\u0645\u0648\u0642\u0639\u060c \u0648\u0627\u0644\u0639\u062f \u0627\u0644\u062a\u0646\u0627\u0632\u0644\u064a \u0644\u0644\u0635\u0644\u0627\u0629 \u0627\u0644\u0642\u0627\u062f\u0645\u0629\u060c \u0648\u0627\u0644\u062a\u0627\u0631\u064a\u062e \u0627\u0644\u0647\u062c\u0631\u064a\u060c \u0648\u0627\u0644\u0623\u0630\u0643\u0627\u0631\u060c \u0648\u0627\u062a\u062c\u0627\u0647 \u0627\u0644\u0642\u0628\u0644\u0629.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-ab59f57 elementor-widget elementor-widget-html\" data-id=\"ab59f57\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<dl class=\"aa-cs-facts\"><div class=\"aa-cs-fact\"><dt>\u0627\u0644\u062f\u0648\u0631<\/dt><dd>\u062a\u0635\u0645\u064a\u0645 \u0627\u0644\u0645\u0646\u062a\u062c \u0648\u0627\u0644\u062a\u0637\u0648\u064a\u0631 \u0627\u0644\u0643\u0627\u0645\u0644<\/dd><\/div><div class=\"aa-cs-fact\"><dt>\u0627\u0644\u062a\u0635\u0646\u064a\u0641<\/dt><dd>\u062a\u0637\u0628\u064a\u0642 \u0648\u064a\u0628 \u062a\u0642\u062f\u0645\u064a<\/dd><\/div><div class=\"aa-cs-fact\"><dt>\u0627\u0644\u062d\u0627\u0644\u0629<\/dt><dd>\u062a\u0637\u0628\u064a\u0642 \u0639\u0627\u0645 \u0645\u0628\u0627\u0634\u0631<\/dd><\/div><div class=\"aa-cs-fact\"><dt>\u0623\u0646\u062c\u0632 \u0628\u0627\u0633\u062a\u062e\u062f\u0627\u0645<\/dt><dd>Vanilla JS &middot; no framework<\/dd><\/div><\/dl>\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-69c02ec aa-cs-cta-row e-con-full e-flex e-con e-child\" data-id=\"69c02ec\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7035d1e aa-el-btn aa-el-btn--primary elementor-widget elementor-widget-button\" data-id=\"7035d1e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/sakenah.3dot.tech\/\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Open the Sakenah live demo (opens in a new tab)\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u062a\u062c\u0631\u0628\u0629 \u0627\u0644\u0646\u0638\u0627\u0645<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5502306 aa-el-btn aa-el-btn--ghost elementor-widget elementor-widget-button\" data-id=\"5502306\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/anasalassi.com\/ar\/#contact\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u0627\u062d\u062c\u0632 \u0627\u062c\u062a\u0645\u0627\u0639\u0627<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-4bab370 aa-cs-cover aa-cs-sec e-flex e-con-boxed e-con e-parent\" data-id=\"4bab370\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-503ff98 elementor-widget elementor-widget-html\" data-id=\"503ff98\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<div class=\"aa-cs-coverimg\"><img loading=\"lazy\" width=\"640\" height=\"480\" src=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-cover-1024x768.jpg\" class=\"attachment-large size-large\" alt=\"Sakenah prayer-times app on a dark green brand background showing the next-prayer countdown in Arabic\" decoding=\"async\" srcset=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-cover-1024x768.jpg 1024w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-cover-300x225.jpg 300w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-cover-768x576.jpg 768w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-cover-16x12.jpg 16w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-cover-800x600.jpg 800w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-cover.jpg 1200w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><\/div>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-233b27e aa-cs-sec e-flex e-con-boxed e-con e-parent\" data-id=\"233b27e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a9f8d91 aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"a9f8d91\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0646\u0638\u0631\u0629 \u0639\u0627\u0645\u0629<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-242a68c aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"242a68c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>\u064a\u062c\u064a\u0628 \u0633\u0643\u064a\u0646\u0629 \u0639\u0646 \u0633\u0624\u0627\u0644 \u0648\u0627\u062d\u062f \u0628\u0625\u062a\u0642\u0627\u0646: \u0645\u062a\u0649 \u0627\u0644\u0635\u0644\u0627\u0629 \u0627\u0644\u0642\u0627\u062f\u0645\u0629 \u0648\u0643\u0645 \u0628\u0642\u064a \u0639\u0644\u064a\u0647\u0627\u061f \u0648\u062d\u0648\u0644 \u0630\u0644\u0643 \u064a\u0636\u064a\u0641 \u062c\u062f\u0648\u0644 \u0627\u0644\u064a\u0648\u0645 \u0643\u0627\u0645\u0644\u0627\u064b\u060c \u0648\u0627\u0644\u062a\u0627\u0631\u064a\u062e \u0627\u0644\u0647\u062c\u0631\u064a\u060c \u0648\u0623\u0630\u0643\u0627\u0631 \u0627\u0644\u0635\u0628\u0627\u062d \u0648\u0627\u0644\u0645\u0633\u0627\u0621\u060c \u0648\u0627\u062a\u062c\u0627\u0647 \u0627\u0644\u0642\u0628\u0644\u0629 \u2014 \u0628\u0627\u0644\u0639\u0631\u0628\u064a\u0629 \u0648\u0627\u0644\u0625\u0646\u062c\u0644\u064a\u0632\u064a\u0629\u060c \u0628\u0644\u0627 \u062d\u0633\u0627\u0628 \u0648\u0644\u0627 \u062a\u062a\u0628\u0651\u0639.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-96b9f21 aa-cs-sec aa-cs-two e-flex e-con-boxed e-con e-parent\" data-id=\"96b9f21\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t<div class=\"elementor-element elementor-element-83f9a4c aa-cs-panel e-flex e-con-boxed e-con e-parent\" data-id=\"83f9a4c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-a59d463 aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"a59d463\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0627\u0644\u0645\u0634\u0643\u0644\u0629<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-cf1b3a7 elementor-widget elementor-widget-html\" data-id=\"cf1b3a7\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<ul class=\"aa-cs-list\"><li>\u0645\u0639\u0638\u0645 \u062a\u0637\u0628\u064a\u0642\u0627\u062a \u0627\u0644\u0645\u0648\u0627\u0642\u064a\u062a \u062a\u0637\u0644\u0628 \u062d\u0633\u0627\u0628\u0627\u064b \u0623\u0648 \u062a\u062d\u0645\u0644 \u0625\u0639\u0644\u0627\u0646\u0627\u062a \u0648\u0623\u062f\u0648\u0627\u062a \u062a\u062a\u0628\u0651\u0639.<\/li><li>\u0648\u0643\u062b\u064a\u0631\u0627\u064b \u0645\u0627 \u062a\u0643\u0648\u0646 \u0627\u0644\u0639\u0631\u0628\u064a\u0629 \u0625\u0636\u0627\u0641\u0629 \u0645\u062a\u0623\u062e\u0631\u0629 \u2014 \u062a\u0631\u062c\u0645\u0629 \u0641\u0648\u0642 \u062a\u062e\u0637\u064a\u0637 \u0645\u0646 \u0627\u0644\u064a\u0633\u0627\u0631 \u0625\u0644\u0649 \u0627\u0644\u064a\u0645\u064a\u0646.<\/li><li>\u0648\u062a\u062a\u0642\u0627\u062f\u0645 \u0627\u0644\u0645\u0648\u0627\u0642\u064a\u062a \u0623\u0648 \u062a\u062a\u0648\u0642\u0641 \u062a\u0645\u0627\u0645\u0627\u064b \u0639\u0646\u062f \u0627\u0646\u0642\u0637\u0627\u0639 \u0627\u0644\u0627\u062a\u0635\u0627\u0644.<\/li><li>\u0648\u0643\u062b\u064a\u0631\u0627\u064b \u0645\u0627 \u062a\u064f\u0638\u0647\u0631 \u062e\u0627\u0635\u064a\u0629 \u0627\u0644\u0642\u0628\u0644\u0629 \u0625\u0628\u0631\u0629 \u0645\u062a\u062d\u0631\u0643\u0629 \u062d\u062a\u0649 \u062d\u064a\u062b \u0644\u0627 \u062a\u0648\u062c\u062f \u0628\u0648\u0635\u0644\u0629.<\/li><\/ul>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-cacbb87 aa-cs-panel e-flex e-con-boxed e-con e-parent\" data-id=\"cacbb87\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-3f463fb aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"3f463fb\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0627\u0644\u062d\u0644<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c3e27cd elementor-widget elementor-widget-html\" data-id=\"c3e27cd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<ul class=\"aa-cs-list aa-cs-list--check\"><li>\u062a\u0641\u062a\u062d\u0647 \u0641\u062a\u062c\u062f \u0627\u0644\u0635\u0644\u0627\u0629 \u0627\u0644\u0642\u0627\u062f\u0645\u0629 \u0648\u0627\u0644\u0639\u062f \u0627\u0644\u062a\u0646\u0627\u0632\u0644\u064a \u0623\u0645\u0627\u0645\u0643 \u0645\u0628\u0627\u0634\u0631\u0629.<\/li><li>\u0627\u0644\u0639\u0631\u0628\u064a\u0629 \u0623\u0648\u0644\u0627\u064b: \u062a\u062e\u0637\u064a\u0637 \u062d\u0642\u064a\u0642\u064a \u0645\u0646 \u0627\u0644\u064a\u0645\u064a\u0646 \u0625\u0644\u0649 \u0627\u0644\u064a\u0633\u0627\u0631\u060c \u0648\u0627\u0644\u0625\u0646\u062c\u0644\u064a\u0632\u064a\u0629 \u0644\u063a\u0629 \u062b\u0627\u0646\u064a\u0629.<\/li><li>\u064a\u064f\u062e\u0632\u064e\u0651\u0646 \u0634\u0647\u0631 \u0643\u0627\u0645\u0644 \u0645\u0646 \u0627\u0644\u0645\u0648\u0627\u0642\u064a\u062a\u060c \u0641\u0644\u0627 \u064a\u062d\u062a\u0627\u062c \u0627\u0644\u064a\u0648\u0645 \u0627\u0644\u0639\u0627\u062f\u064a \u0625\u0644\u0649 \u0623\u064a \u0627\u062a\u0635\u0627\u0644.<\/li><li>\u0648\u062a\u0648\u0636\u0651\u062d \u0627\u0644\u0642\u0628\u0644\u0629 \u0635\u0631\u0627\u062d\u0629\u064b \u0625\u0646 \u0643\u0627\u0646 \u0627\u0644\u0645\u0639\u0631\u0648\u0636 \u0627\u062a\u062c\u0627\u0647\u0627\u064b \u062b\u0627\u0628\u062a\u0627\u064b \u0623\u0645 \u0628\u0648\u0635\u0644\u0629 \u062d\u064a\u0629.<\/li><\/ul>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-85379b7 aa-cs-sec aa-cs-panel e-flex e-con-boxed e-con e-parent\" data-id=\"85379b7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-26061d0 aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"26061d0\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u062f\u0648\u0631\u064a<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-8d96e14 aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"8d96e14\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p class=\"aa-cs-contrib\">\u062a\u062e\u0637\u064a\u0637 \u0627\u0644\u0645\u0646\u062a\u062c\u060c \u0648\u0628\u0646\u0627\u0621 \u062a\u062c\u0631\u0628\u0629 \u0627\u0644\u0627\u0633\u062a\u062e\u062f\u0627\u0645\u060c \u0648\u0627\u0644\u062a\u0637\u0648\u064a\u0631 \u0627\u0644\u0643\u0627\u0645\u0644\u060c \u0648\u062f\u0639\u0645 \u0627\u0644\u0639\u0631\u0628\u064a\u0629 \u0648\u0627\u0644\u0625\u0646\u062c\u0644\u064a\u0632\u064a\u0629\u060c \u0648\u0627\u0633\u062a\u0631\u0627\u062a\u064a\u062c\u064a\u0629 \u0627\u0644\u0639\u0645\u0644 \u062f\u0648\u0646 \u0627\u062a\u0635\u0627\u0644 \u0648\u0627\u0644\u062a\u062e\u0632\u064a\u0646 \u0627\u0644\u0645\u0624\u0642\u062a\u060c \u0648\u062a\u0635\u062d\u064a\u062d \u0627\u0644\u0642\u0628\u0644\u0629 \u0648\u0627\u0644\u062a\u0639\u0627\u0645\u0644 \u0645\u0639 \u062d\u0633\u0627\u0633\u0627\u062a \u0627\u0644\u062c\u0647\u0627\u0632\u060c \u0648\u0627\u0644\u0646\u0634\u0631 \u0639\u0644\u0649 \u0628\u064a\u0626\u0629 \u0627\u0644\u0625\u0646\u062a\u0627\u062c.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-fafc872 aa-cs-sec e-flex e-con-boxed e-con e-parent\" data-id=\"fafc872\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-9208db1 aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"9208db1\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0623\u0628\u0631\u0632 \u0627\u0644\u0645\u064a\u0632\u0627\u062a<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e2beed9 elementor-widget elementor-widget-html\" data-id=\"e2beed9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<ul class=\"aa-cs-list aa-cs-list--check aa-cs-modules\"><li><strong>Prayer times by location<\/strong> \u2014 device location or manual country and city selection.<\/li><li><strong>Next-prayer countdown<\/strong> \u2014 live hours, minutes and seconds to the next adhan.<\/li><li><strong>Daily schedule<\/strong> \u2014 Fajr through Isha with the active prayer highlighted.<\/li><li><strong>Gregorian and Hijri dates<\/strong> \u2014 both shown together.<\/li><li><strong>Adhkar<\/strong> \u2014 morning, evening and after-prayer, with a counter and cited sources.<\/li><li><strong>Qibla guidance<\/strong> \u2014 a bearing from true north, plus a live compass where the device supports one.<\/li><li><strong>Calculation methods<\/strong> \u2014 selectable, with the method named under the schedule.<\/li><li><strong>\u0627\u0644\u0639\u0631\u0628\u064a\u0629 \u0648\u0627\u0644\u0625\u0646\u062c\u0644\u064a\u0632\u064a\u0629<\/strong> \u2014 full RTL, switchable at any time.<\/li><\/ul>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-143a1a6 aa-cs-sec e-flex e-con-boxed e-con e-parent\" data-id=\"143a1a6\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-6881e71 aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"6881e71\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0643\u064a\u0641 \u062a\u064f\u062d\u0633\u0628 \u0627\u0644\u0645\u0648\u0627\u0642\u064a\u062a<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0478ef6 aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"0478ef6\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Times come from the AlAdhan calendar service, requested a whole month at a time and cached locally. The calculation method is explicit and selectable, and the app names the method it used underneath the schedule rather than hiding it.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-d62e2fd elementor-widget elementor-widget-html\" data-id=\"d62e2fd\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<ul class=\"aa-cs-list\"><li>One request per location and month, not one per day.<\/li><li>Method and school are part of the cache key, so switching either refetches correctly.<\/li><li>Tomorrow\u2019s Fajr is fetched ahead of a month boundary so the countdown never gaps.<\/li><li>Times are presented as the chosen authority calculates them; Sakenah does not adjust them.<\/li><\/ul>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-0986bb7 aa-cs-sec aa-cs-band e-flex e-con-boxed e-con e-parent\" data-id=\"0986bb7\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e047349 aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"e047349\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0627\u062a\u062c\u0627\u0647 \u0627\u0644\u0642\u0628\u0644\u0629 \u0628\u0635\u062f\u0642<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6b95c24 aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"6b95c24\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>The Qibla is the great-circle initial bearing from your position to the Kaaba, in degrees clockwise from true north. What the app can promise depends on the device, so it says which one you are getting.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-bb9db6f elementor-widget elementor-widget-html\" data-id=\"bb9db6f\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<ul class=\"aa-cs-list aa-cs-list--check\"><li>Coordinates come from the device when permission is granted, otherwise from the selected city.<\/li><li>The panel states the source and whether the reading is a fixed bearing or a live compass.<\/li><li>On iOS the compass is requested only from a deliberate tap, never on page load.<\/li><li>Where the browser exposes no absolute heading, the needle stays still and says so \u2014 a compass that moves without a sensor would be worse than none.<\/li><li>Calibration guidance appears once a live heading is actually running.<\/li><\/ul>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-6f581ba aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"6f581ba\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p class=\"aa-cs-contrib\">\u064a\u062a\u0623\u062b\u0631 \u0623\u064a \u0628\u0648\u0635\u0644\u0629 \u0647\u0627\u062a\u0641 \u0628\u0627\u0644\u062a\u062f\u0627\u062e\u0644 \u0627\u0644\u0645\u063a\u0646\u0627\u0637\u064a\u0633\u064a \u0648\u062d\u0633\u0627\u0633\u0627\u062a \u0627\u0644\u062c\u0647\u0627\u0632\u060c \u0644\u0630\u0627 \u064a\u064f\u0642\u062f\u064e\u0651\u0645 \u0627\u0644\u0627\u062a\u062c\u0627\u0647 \u0627\u0644\u0645\u0628\u0627\u0634\u0631 \u0643\u062f\u0644\u064a\u0644 \u0627\u0633\u062a\u0631\u0634\u0627\u062f\u064a \u0644\u0627 \u0643\u0623\u062f\u0627\u0629 \u0642\u064a\u0627\u0633 \u062f\u0642\u064a\u0642\u0629.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-af5818e aa-cs-sec e-flex e-con-boxed e-con e-parent\" data-id=\"af5818e\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-1dbb10b aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"1dbb10b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0627\u0644\u062e\u0635\u0648\u0635\u064a\u0629 \u0648\u0627\u0644\u0645\u0648\u0642\u0639<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3229443 elementor-widget elementor-widget-html\" data-id=\"3229443\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<ul class=\"aa-cs-list aa-cs-list--check\"><li>\u0628\u0644\u0627 \u062d\u0633\u0627\u0628 \u0648\u0644\u0627 \u062a\u0633\u062c\u064a\u0644 \u062f\u062e\u0648\u0644 \u0648\u0644\u0627 \u062a\u062d\u0644\u064a\u0644\u0627\u062a \u0648\u0644\u0627 \u0625\u0639\u0644\u0627\u0646\u0627\u062a.<\/li><li>\u0644\u0627 \u064a\u064f\u0637\u0644\u0628 \u0627\u0644\u0645\u0648\u0642\u0639 \u0625\u0644\u0627 \u062d\u064a\u0646 \u062a\u0637\u0644\u0628\u0647 \u0623\u0646\u062a\u060c \u0648\u064a\u064f\u0642\u0631\u064e\u0651\u0628 \u0625\u0644\u0649 \u0646\u062d\u0648 \u0643\u064a\u0644\u0648\u0645\u062a\u0631.<\/li><li>\u0648\u062a\u0628\u0642\u0649 \u0647\u0630\u0647 \u0627\u0644\u0642\u064a\u0645\u0629 \u0627\u0644\u0645\u0642\u0631\u0651\u0628\u0629 \u0641\u064a \u0645\u062a\u0635\u0641\u062d\u0643 \u2014 \u062a\u064f\u0633\u062a\u062e\u062f\u0645 \u0644\u062c\u0644\u0628 \u0627\u0644\u0645\u0648\u0627\u0642\u064a\u062a \u0648\u0644\u0627 \u062a\u064f\u0631\u0633\u0644 \u0625\u0644\u0649 \u0623\u064a \u062c\u0647\u0629 \u0623\u062e\u0631\u0649.<\/li><li>\u0648\u0627\u062e\u062a\u064a\u0627\u0631 \u0627\u0644\u0645\u062f\u064a\u0646\u0629 \u0628\u062f\u0644 \u0645\u0634\u0627\u0631\u0643\u0629 \u0627\u0644\u0645\u0648\u0642\u0639 \u062e\u064a\u0627\u0631 \u0643\u0627\u0645\u0644 \u0644\u0627 \u062d\u0644\u0651 \u0646\u0627\u0642\u0635.<\/li><\/ul>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-578181a aa-cs-sec e-flex e-con-boxed e-con e-parent\" data-id=\"578181a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ea75b2e aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"ea75b2e\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u064a\u0639\u0645\u0644 \u062f\u0648\u0646 \u0627\u062a\u0635\u0627\u0644 \u0648\u0642\u0627\u0628\u0644 \u0644\u0644\u062a\u062b\u0628\u064a\u062a<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-3f71167 aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"3f71167\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>Sakenah is a progressive web app. It installs to the home screen and keeps working without a connection.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-31cb78d elementor-widget elementor-widget-html\" data-id=\"31cb78d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<ul class=\"aa-cs-list\"><li>A month of times is stored locally, so a normal day makes no network request.<\/li><li>A service worker caches the app shell and falls back to the last good response.<\/li><li>The cache is versioned, so a shipped fix reaches people rather than sitting behind a stale copy.<\/li><\/ul>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-94d85b0 aa-cs-sec e-flex e-con-boxed e-con e-parent\" data-id=\"94d85b0\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-7500d7c aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"7500d7c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0644\u0642\u0637\u0627\u062a \u0645\u0646 \u0627\u0644\u0648\u0627\u062c\u0647\u0629<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-033fc2b aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"033fc2b\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>\u0645\u0644\u062a\u0642\u0637\u0629 \u0645\u0646 \u0627\u0644\u062a\u0637\u0628\u064a\u0642 \u0627\u0644\u0645\u0628\u0627\u0634\u0631.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5df84c5 aa-cs-sec aa-cs-gallery e-flex e-con-boxed e-con e-parent\" data-id=\"5df84c5\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-57c0ab5 elementor-widget elementor-widget-html\" data-id=\"57c0ab5\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<figure class=\"aa-cs-shot\"><img loading=\"lazy\" width=\"640\" height=\"430\" src=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-home-ar.jpg\" class=\"attachment-large size-large\" alt=\"Sakenah home screen in Arabic with the next prayer, countdown to adhan and the Hijri date\" decoding=\"async\" srcset=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-home-ar.jpg 1012w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-home-ar-300x202.jpg 300w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-home-ar-768x516.jpg 768w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-home-ar-18x12.jpg 18w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption class=\"aa-cs-cap\">Arabic home \u2014 next prayer, countdown to adhan and the Hijri date.<\/figcaption><\/figure>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-205a1d9 elementor-widget elementor-widget-html\" data-id=\"205a1d9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<figure class=\"aa-cs-shot\"><img loading=\"lazy\" width=\"640\" height=\"430\" src=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-home-en.jpg\" class=\"attachment-large size-large\" alt=\"Sakenah home screen in English showing next prayer Fajr, countdown and Gregorian and Hijri dates\" decoding=\"async\" srcset=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-home-en.jpg 1012w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-home-en-300x202.jpg 300w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-home-en-768x516.jpg 768w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-home-en-18x12.jpg 18w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption class=\"aa-cs-cap\">The same screen in English, laid out left-to-right.<\/figcaption><\/figure>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-1161df9 elementor-widget elementor-widget-html\" data-id=\"1161df9\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<figure class=\"aa-cs-shot\"><img loading=\"lazy\" width=\"640\" height=\"430\" src=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-schedule-ar.jpg\" class=\"attachment-large size-large\" alt=\"Daily prayer schedule in Arabic listing Fajr through Isha with the calculation method named below\" decoding=\"async\" srcset=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-schedule-ar.jpg 1012w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-schedule-ar-300x202.jpg 300w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-schedule-ar-768x516.jpg 768w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-schedule-ar-18x12.jpg 18w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption class=\"aa-cs-cap\">The day\u2019s schedule, with the calculation method named underneath.<\/figcaption><\/figure>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-5eadb93 elementor-widget elementor-widget-html\" data-id=\"5eadb93\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<figure class=\"aa-cs-shot\"><img loading=\"lazy\" width=\"640\" height=\"430\" src=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-location-picker.jpg\" class=\"attachment-large size-large\" alt=\"Location sheet offering use-my-location plus manual country and city selection with saved cities\" decoding=\"async\" srcset=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-location-picker.jpg 1012w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-location-picker-300x202.jpg 300w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-location-picker-768x516.jpg 768w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-location-picker-18x12.jpg 18w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption class=\"aa-cs-cap\">Location: use the device, or pick a country and city by hand.<\/figcaption><\/figure>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-7006252 elementor-widget elementor-widget-html\" data-id=\"7006252\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<figure class=\"aa-cs-shot\"><img loading=\"lazy\" width=\"640\" height=\"430\" src=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-adhkar.jpg\" class=\"attachment-large size-large\" alt=\"Morning adhkar with Quranic typography, a tap counter and the source cited under each dhikr\" decoding=\"async\" srcset=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-adhkar.jpg 1012w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-adhkar-300x202.jpg 300w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-adhkar-768x516.jpg 768w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-adhkar-18x12.jpg 18w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption class=\"aa-cs-cap\">Adhkar with a tap counter and the source cited under each one.<\/figcaption><\/figure>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-b6ff213 elementor-widget elementor-widget-html\" data-id=\"b6ff213\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<figure class=\"aa-cs-shot\"><img loading=\"lazy\" width=\"640\" height=\"430\" src=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-qibla-ar.jpg\" class=\"attachment-large size-large\" alt=\"Qibla panel in Arabic showing 244 degrees from north for Riyadh with the location source and a fixed-bearing explanation\" decoding=\"async\" srcset=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-qibla-ar.jpg 1012w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-qibla-ar-300x202.jpg 300w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-qibla-ar-768x516.jpg 768w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-qibla-ar-18x12.jpg 18w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption class=\"aa-cs-cap\">Qibla in Arabic \u2014 bearing, location source and what the reading means.<\/figcaption><\/figure>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-89419aa elementor-widget elementor-widget-html\" data-id=\"89419aa\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<figure class=\"aa-cs-shot\"><img loading=\"lazy\" width=\"640\" height=\"430\" src=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-qibla-en.jpg\" class=\"attachment-large size-large\" alt=\"Qibla panel in English showing 244 degrees from north with Enable compass and Refresh location actions\" decoding=\"async\" srcset=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-qibla-en.jpg 1012w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-qibla-en-300x202.jpg 300w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-qibla-en-768x516.jpg 768w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-qibla-en-18x12.jpg 18w\" sizes=\"auto, (max-width: 640px) 100vw, 640px\" \/><figcaption class=\"aa-cs-cap\">Qibla in English, with Enable compass and Refresh location.<\/figcaption><\/figure>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-a968d86 elementor-widget elementor-widget-html\" data-id=\"a968d86\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<figure class=\"aa-cs-shot\"><img loading=\"lazy\" width=\"500\" height=\"743\" src=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-mobile-ar.jpg\" class=\"attachment-large size-large\" alt=\"Sakenah on a narrow mobile viewport with stacked content and no horizontal scrolling\" decoding=\"async\" srcset=\"https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-mobile-ar.jpg 500w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-mobile-ar-202x300.jpg 202w, https:\/\/anasalassi.com\/wp-content\/uploads\/2026\/09\/sakenah-mobile-ar-8x12.jpg 8w\" sizes=\"auto, (max-width: 500px) 100vw, 500px\" \/><figcaption class=\"aa-cs-cap\">Mobile layout \u2014 stacked and readable, with no horizontal scrolling.<\/figcaption><\/figure>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-2f7e11c aa-cs-sec e-flex e-con-boxed e-con e-parent\" data-id=\"2f7e11c\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8507424 aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"8507424\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0627\u0644\u062a\u0642\u0646\u064a\u0627\u062a<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-608ad40 aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"608ad40\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>\u0628\u0633\u064a\u0637 \u0639\u0646 \u0642\u0635\u062f: \u0628\u0644\u0627 \u0625\u0637\u0627\u0631 \u0639\u0645\u0644\u060c \u0648\u0628\u0644\u0627 \u062e\u0637\u0648\u0629 \u0628\u0646\u0627\u0621\u060c \u0648\u0628\u0644\u0627 \u0634\u062c\u0631\u0629 \u0627\u0639\u062a\u0645\u0627\u062f\u064a\u0627\u062a.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e39f002 elementor-widget elementor-widget-html\" data-id=\"e39f002\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"html.default\">\n\t\t\t\t\t<span class=\"aa-cs-tags__lbl\">\u0627\u0644\u062a\u0642\u0646\u064a\u0627\u062a<\/span><ul class=\"aa-cs-tags\"><li>Vanilla JavaScript (ES modules)<\/li><li>CSS custom properties<\/li><li>Service worker<\/li><li>Web app manifest<\/li><li>localStorage caching<\/li><li>AlAdhan API<\/li><li>Arabic \/ English i18n<\/li><li>Node test runner<\/li><\/ul>\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-28111c3 aa-cs-sec aa-cs-band e-flex e-con-boxed e-con e-parent\" data-id=\"28111c3\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-f916a4a aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"f916a4a\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u0627\u0641\u062a\u062d \u0627\u0644\u062a\u0637\u0628\u064a\u0642<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-0c57518 aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"0c57518\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>\u0628\u0644\u0627 \u062a\u0633\u062c\u064a\u0644 \u062f\u062e\u0648\u0644\u060c \u0648\u0644\u0627 \u0634\u064a\u0621 \u062a\u062b\u0628\u0651\u062a\u0647 \u0625\u0644\u0627 \u0625\u0646 \u0623\u0631\u062f\u062a. \u0627\u062e\u062a\u0631 \u0645\u062f\u064a\u0646\u062a\u0643 \u0648\u062a\u0638\u0647\u0631 \u0627\u0644\u0645\u0648\u0627\u0642\u064a\u062a.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-ff4ef3a aa-cs-cta-row e-con-full e-flex e-con e-child\" data-id=\"ff4ef3a\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-e572efc aa-el-btn aa-el-btn--primary elementor-widget elementor-widget-button\" data-id=\"e572efc\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/sakenah.3dot.tech\/\" target=\"_blank\" rel=\"noopener noreferrer\" aria-label=\"Open the Sakenah live demo (opens in a new tab)\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u062a\u062c\u0631\u0628\u0629 \u0627\u0644\u0646\u0638\u0627\u0645<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-e34d88c aa-el-btn aa-el-btn--ghost elementor-widget elementor-widget-button\" data-id=\"e34d88c\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/anasalassi.com\/ar\/#contact\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">\u0627\u062d\u062c\u0632 \u0627\u062c\u062a\u0645\u0627\u0639\u0627<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-c838855 aa-cs-sec e-flex e-con-boxed e-con e-parent\" data-id=\"c838855\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t\t<div class=\"e-con-inner\">\n\t\t\t\t<div class=\"elementor-element elementor-element-8f5344d aa-cs-h2 elementor-widget elementor-widget-heading\" data-id=\"8f5344d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"heading.default\">\n\t\t\t\t\t<h2 class=\"elementor-heading-title elementor-size-default\">\u062a\u062d\u062a\u0627\u062c \u0634\u064a\u0626\u0627 \u0645\u0634\u0627\u0628\u0647\u0627\u061f<\/h2>\t\t\t\t<\/div>\n\t\t\t\t<div class=\"elementor-element elementor-element-c925c6d aa-cs-lede elementor-widget elementor-widget-text-editor\" data-id=\"c925c6d\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"text-editor.default\">\n\t\t\t\t\t\t\t\t\t<p>\u0623\u062e\u0628\u0631\u0646\u064a \u0628\u0645\u0627 \u064a\u0641\u0639\u0644\u0647 \u0641\u0631\u064a\u0642\u0643 \u064a\u062f\u0648\u064a\u0627 \u0627\u0644\u064a\u0648\u0645\u060c \u0648\u0633\u0623\u062e\u0628\u0631\u0643 \u0628\u0635\u0631\u0627\u062d\u0629 \u0625\u0646 \u0643\u0627\u0646 \u0627\u0644\u0628\u0631\u0646\u0627\u0645\u062c \u0647\u0648 \u0627\u0644\u062d\u0644 \u0627\u0644\u0645\u0646\u0627\u0633\u0628.<\/p>\t\t\t\t\t\t\t\t<\/div>\n\t\t<div class=\"elementor-element elementor-element-5e6a8de aa-cs-cta-row e-con-full e-flex e-con e-child\" data-id=\"5e6a8de\" data-element_type=\"container\" data-e-type=\"container\">\n\t\t\t\t<div class=\"elementor-element elementor-element-ee509ee aa-el-btn aa-el-btn--primary elementor-widget elementor-widget-button\" data-id=\"ee509ee\" data-element_type=\"widget\" data-e-type=\"widget\" data-widget_type=\"button.default\">\n\t\t\t\t\t\t\t\t\t\t<a class=\"elementor-button elementor-button-link elementor-size-sm\" href=\"https:\/\/anasalassi.com\/ar\/#contact\">\n\t\t\t\t\t\t<span class=\"elementor-button-content-wrapper\">\n\t\t\t\t\t\t\t\t\t<span class=\"elementor-button-text\">Start a Conversation<\/span>\n\t\t\t\t\t<\/span>\n\t\t\t\t\t<\/a>\n\t\t\t\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t\t<\/div>\n\t\t\t\t<\/div>\n\t\t\t\t<\/div>","protected":false},"excerpt":{"rendered":"<p>Sakenah is a bilingual prayer-times progressive web app: location-based schedules, a live next-prayer countdown, Hijri date, adhkar and Qibla guidance \u2014 no account, no tracking, and it works offline.<\/p>","protected":false},"author":0,"featured_media":5600,"parent":5422,"menu_order":0,"comment_status":"closed","ping_status":"closed","template":"elementor_header_footer","meta":{"_acf_changed":false,"footnotes":""},"class_list":["post-5610","page","type-page","status-publish","has-post-thumbnail","hentry"],"acf":[],"_links":{"self":[{"href":"https:\/\/anasalassi.com\/ar\/wp-json\/wp\/v2\/pages\/5610","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/anasalassi.com\/ar\/wp-json\/wp\/v2\/pages"}],"about":[{"href":"https:\/\/anasalassi.com\/ar\/wp-json\/wp\/v2\/types\/page"}],"replies":[{"embeddable":true,"href":"https:\/\/anasalassi.com\/ar\/wp-json\/wp\/v2\/comments?post=5610"}],"version-history":[{"count":0,"href":"https:\/\/anasalassi.com\/ar\/wp-json\/wp\/v2\/pages\/5610\/revisions"}],"up":[{"embeddable":true,"href":"https:\/\/anasalassi.com\/ar\/wp-json\/wp\/v2\/pages\/5422"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/anasalassi.com\/ar\/wp-json\/wp\/v2\/media\/5600"}],"wp:attachment":[{"href":"https:\/\/anasalassi.com\/ar\/wp-json\/wp\/v2\/media?parent=5610"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}