How hamzaelmanzari/cms-frontend works
Itqan CMS is an Angular frontend for discovering licensed Quranic assets and for publishers to manage them. The user-facing flow starts at the catalog or account routes; authenticated publishers enter a permission-gated portal to manage content and publisher operations. Authentication is implemented through an auth service and a headless Allauth API client. The README documents API access, licensing, localization, and content standards, but backend and UI implementation details for several features were not sampled; those branches are represented at their existing feature-directory paths without speculative internal links.
Main entry points: admin.routes.ts Portal routes · app.routes.ts Application routes · recitations Recitation management · auth.service.ts Auth state and actions
Components 25
Public discovery
- Asset gallery
src/app/features/gallery - Publisher directory
src/app/features/publishers - Reciter directory
src/app/features/reciters - License details
src/app/features/license - Content standards
src/app/features/content-standards
Identity and access
- Account routes
src/app/core/auth/account.routes.ts - Account workflows
src/app/core/auth/pages - Auth state and actions
src/app/core/auth/services/auth.service.ts - Headless auth API
src/app/core/auth/headless/headless-auth-api.service.ts
Publisher portal
- Portal routes
src/app/features/admin/admin.routes.ts - Portal permission guards
src/app/features/admin/guards/permission.guard.ts - Recitation management
src/app/features/admin/recitations - Reciter management
src/app/features/admin/reciters - Tafsir management
src/app/features/admin/tafsirs - Mushaf management
src/app/features/admin/mushafs - Font management
src/app/features/admin/fonts - Publisher management
src/app/features/admin/publishers - Members and requests
src/app/features/admin/members - Issues and programs
src/app/features/admin - Usage insights
src/app/features/admin/usage - Admin identity
src/app/features/admin/services/admin-auth.service.ts
Shared platform
- Application routes
src/app/app.routes.ts
Other components
- Visitor or publisher
- Allauth service
- CMS API
Connections 28
- Visitor or publisher → Application routes: opens
README.md - Application routes → Asset gallery: routes to
src/app/app.routes.ts - Application routes → Publisher directory: routes to
src/app/app.routes.ts - Application routes → Reciter directory: routes to
src/app/app.routes.ts - Visitor or publisher → License details: consults
README.md - Visitor or publisher → Content standards: consults
README.md - Application routes → Account routes: includes
src/app/app.routes.ts - Account routes → Account workflows: routes to
src/app/core/auth/account.routes.ts - Account workflows → Auth state and actions: uses
src/app/core/auth/pages/verify-email/verify-email.page.ts - Auth state and actions → Headless auth API: calls
src/app/core/auth/services/auth.service.ts - Headless auth API → Allauth service: sends HTTP requests
src/app/core/auth/headless/headless-auth-api.service.ts - Application routes → Portal routes: loads portal routes
src/app/app.routes.ts - Portal routes → Recitation management: routes to
src/app/features/admin/recitations/recitations.routes.ts - Portal routes → Reciter management: routes to
src/app/features/admin/reciters/reciters.routes.ts - Portal routes → Tafsir management: routes to
src/app/features/admin/tafsirs/tafsirs.routes.ts - Portal routes → Mushaf management: routes to
src/app/features/admin/mushafs/mushafs.routes.ts - Portal routes → Font management: routes to
src/app/features/admin/fonts/fonts.routes.ts - Portal routes → Publisher management: routes to
src/app/app.routes.ts - Portal routes → Members and requests: routes to
src/app/app.routes.ts - Portal routes → Issues and programs: routes to
src/app/features/admin/admin.routes.ts - Portal routes → Usage insights: routes to
- Recitation management → Portal permission guards: checks access
src/app/features/admin/recitations/recitations.routes.ts - Reciter management → Portal permission guards: checks access
src/app/features/admin/reciters/reciters.routes.ts - Admin identity → Auth state and actions: reads user state
src/app/features/admin/services/admin-auth.service.ts - Portal permission guards → Admin identity: checks permissions
src/app/features/admin/guards/permission.guard.ts - Recitation management → CMS API: manages content
- Visitor or publisher → Asset gallery: browses assets
README.md - Visitor or publisher → Publisher management: manages publications
README.md