Najaah LMS - Feature Agent

Implement Najaah LMS business logic with service patterns, authorization checks, and state machines.

Updated Dec 1, 2025
One-click install
npx skills add https://github.com/tarekBassiouny/najaah-backend --skill najaah-lms-feature-agent
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: Najaah LMS - Feature Agent
Source: https://github.com/tarekBassiouny/najaah-backend/tree/main/.claude/skills/najaah-features
Command: npx skills add https://github.com/tarekBassiouny/najaah-backend --skill najaah-lms-feature-agent

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes references (resource) components.

What problem does it solve?

This Skill provides a structured approach to implementing complex business logic, domain rules, and workflows for the Najaah LMS platform, ensuring consistency and maintainability.

Core Features & Use Cases

  • Service Layer Implementation: Enforces strict patterns for building reusable business logic in services.
  • Authorization & Domain Rules: Implements robust checks for user permissions, business constraints, and state management.
  • Workflow Automation: Manages multi-step processes like device changes with request-approval patterns.
  • Use Case: When a student needs to change their registered device, this agent handles the entire request, approval, and device revocation/activation process, ensuring all domain rules are followed.

Quick Start

Implement the PlaybackService to handle video playback requests according to Najaah LMS business rules.

Frequently Asked Questions about Najaah LMS - Feature Agent

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I implement LMS business logic for video playback authorization and view limits?

To implement LMS business logic for video playback authorization, use strict service patterns with constructor injection and readonly properties. The service enforces domain rules like view limits and session management through robust authorization checks and domain exception handling.

What is the best way to manage device change requests in a learning management system?

Managing device change requests in a learning management system requires a multi-step workflow automation pattern. The process handles the entire request, approval, and device revocation or activation sequence, ensuring all domain rules and state machine implementations are followed.

How does state machine implementation work for LMS session management and domain rules?

State machine implementation for LMS session management works by enforcing strict typing and domain exception handling within service layers. It manages user permissions, business constraints, and workflow state transitions to maintain consistent authorization and session validation.

Can I use service patterns with constructor injection for domain rules and authorization checks?

Yes, you can use service patterns with constructor injection for domain rules and authorization checks. This approach enforces strict typing and readonly properties, creating reusable business logic components that handle scenarios like video playback authorization and view limit enforcement.

Why does my LMS workflow automation fail during multi-step approval processes?

LMS workflow automation fails during multi-step approval processes when domain exception handling and state machine implementations are not strictly enforced. Proper service layer implementation with robust authorization checks is required to manage business constraints and state transitions correctly.

Do I need strict typing and readonly properties to build LMS service layer implementations?

Yes, strict typing and readonly properties are required to build LMS service layer implementations. Adhering to these constraints alongside constructor injection ensures maintainable, reusable business logic that enforces domain rules and authorization checks consistently.