آيات الأرقم
AyyatAlArqam
تَعَاهَدُوا الْقُرْآنَ
هذا العمل خالص لوجه الله. اللهم ثبتنا على ذلك. This work is purely for the sake of Allah
بِسْمِ اللَّهِ الرَّحْمَٰنِ الرَّحِيمِ
كل ما تم تحديثه وإضافته في آيات الأرقم — منصة تتبع حفظ القرآن للعائلات والحلقات
عرض ١٤١–١٦٠ من أصل ١٦٥ إصدار
Admin Panel i18n: full Arabic/English localization via next-intl Admin namespace; AdminLangToggle in header; dir/lang handled by root layout; all admin pages and components translated (layout nav, overview, users list/detail, groups list/detail, StatsCards, SiteSettingsPanel, UsersTable, GroupsTable, MemberCard)
Review Schedule UI: ReviewPanel component with spaced repetition queue (SM-2 simplified); surahs due for review shown with count badge; quality-based interval/streak update (strong ×2.5, medium ×1.5, weak reset); Goals + Review panels shown side by side on desktop; review.* keys added to Dashboard i18n namespace
Goals UI: GoalsPanel component in dashboard showing per-member goals with progress bars, deadline status (overdue/soon/met), and owner create/delete; Goal interface in types; goals.* keys in Dashboard i18n namespace (ar + en)
Phase 8.4 i18n Step 5: language toggle button in AppHeader (EN↔ع); sets NEXT_LOCALE cookie, triggers full page reload so dir/lang attributes update; Phase 8.4 i18n complete
Phase 8.4 i18n Step 4: translate compare page, auth pages (login/register/reset-password), public/group public/public stats pages, share expired screen, and invite pages; add Compare, Auth, Public, Invite namespaces to ar.json and en.json; locale-aware number formatting in public client components
Phase 8.4 i18n Step 3: translate all dashboard components and pages (StatsRow, ComparisonBar, SurahGrid, MonthlyProgressChart, ProgressModal, ManageMembersModal, SurahReader, MemberBar, DashboardClient, DashboardEmpty, onboarding, profile); replace QUALITY_AR and ARABIC_MONTHS with t() and Intl.DateTimeFormat; formatDateTime now locale-aware
Phase 8: privacy policy page (/privacy) and terms of service page (/terms) in Arabic; footer links for privacy + terms; extend compare page to 3-way member comparison with per-member color coding, stats table, overall progress bars, and surah-by-surah grid
Phase 7: bundle Quran text as local JSON (1.3 MB, 114 surahs, Uthmani script); rewrite SurahReader to load from bundled data instead of fetching external API — instant display, works offline; tap any ayah to set memorization progress with sticky save bar
Phase 6: group search page (/groups) with live filter and join button; public group profile pages (/groups/[slug]) showing description, member count, and public members with progress bars; is_public toggle + description in group creation form; ⚙️ group settings modal (description + public toggle) for owned groups; active group description shown in dashboard header; "البحث عن مجموعات" added to nav burger menu
Phase 5: monthly SVG progress chart (6-month bar chart per active member); currently-studying surah picker with progress bar and quality badge; group leaderboard top-3 with medals; activity boxes with member + time-range filters (اليوم/الأسبوع/الشهر/الكل); "who's tracking me" box shows linked groups with member name and leave button; snapshot API fires on first progress save of each month
Phase 4: replace single group_message field with group_messages table history; two-tab UI (إعلانات المشرف / رسائل الأعضاء) with urgent flag, author label, paginated history (4/page); owner composes admin announcements with urgent toggle; linked members compose member messages; Ctrl+Enter to send
Phase 3: role-based group creation limits (Teacher 3, Shaikh 5, Student none); Shaikh/admin can add members via 6-char profile code (إضافة بالرمز); profile page shows copyable profile code with regenerate; nav shows role badge for non-student roles; burger menu expanded with Dashboard/Profile/Admin links
Phase 1+2: database foundation (user roles, profile_code, group_messages, progress_snapshots tables); redesign onboarding as 3-step profile wizard (display_name, optional extras); proxy.ts redirects incomplete onboarding users; auth callback simplified; dashboard handles no-group empty state
Dashboard: activity boxes paginated (5 rows/page, السابق/التالي buttons, resets on group switch); remove scrollbar overlap with timestamp
Dashboard: fix group message box height (matches comparison bar, scrolls on overflow); fix activity boxes scrollbar overlapping date/time text
Fix React insertBefore errors: suppress hydration warning on relativeTime span, hide pwa-splash with display:none instead of removeChild, move GoogleAnalytics inside body
Dashboard: move group message beside مقارنة التقدم (side by side, message on left); add two activity boxes (recent progress updates + recent quality changes) with date/time
Fix service worker breaking client-side navigation (skip navigate-mode requests and Next.js RSC fetches)
Delete INSTRUCTIONS-already-working-project.md (setup instructions, no longer needed)
Housekeeping: fix middleware (proxy.ts → middleware.ts, was silently not running), consolidate 10 numbered migrations into schema.sql/rls.sql/functions.sql/seed.sql, delete dead useFamily.ts hook, add Section TypeScript interface, add tamkeen field to Progress interface, create full documentation suite (CLAUDE.md, stack.md, architecture.md, database.md, api.md, conventions.md, roadmap.md, STYLE_GUIDE.md)