A modern, digital-first learning platform built with Angular 20, empowering students to learn independently at their own pace with interactive learning modules, personalized subject selection, and comprehensive progress tracking.
A digital-first platform where students can:
- Learn independently at their own pace
- Access interactive learning modules for enhanced engagement
- Choose subjects, lessons, and language of preference
- Track progress, practice, and improve performance
- Independent Learning - Self-paced learning with personalized study paths
- Interactive Modules - Engaging learning content with multimedia support
- Subject Selection - Choose from diverse subjects and topics
- Language Preferences - Multi-language support for global accessibility
- Progress Tracking - Comprehensive analytics and performance insights
- Practice Sessions - Interactive exercises and assessments
- Performance Analytics - Detailed progress reports and improvement suggestions
- Student Registration - Complete student enrollment with learning preferences
- Profile Management - Personalized learning profiles and settings
- Learning History - Track completed lessons and achievements
- Goal Setting - Set and monitor learning objectives
- Angular 20 - Latest Angular with standalone components
- Signals - Modern state management using Angular signals
- Reactive Forms - Form validation and error handling
- TypeScript - Strict type checking and interfaces
- SCSS - Customizable styling with Bootstrap SCSS variables
- Routing - Angular Router with lazy loading support
- Responsive Design - Mobile-first approach with Bootstrap 5
src/app/
βββ features/ # Feature-based organization
β βββ student-registration/ # Student learning platform
β βββ components/ # UI components
β β βββ student-registration/ # Student enrollment
β β βββ student-list/ # Student management
β β βββ learning-modules/ # Interactive learning content
β β βββ subject-selection/ # Subject and lesson choice
β β βββ progress-tracking/ # Learning analytics
β β βββ practice-sessions/ # Interactive exercises
β βββ models/ # Data models
β βββ services/ # Business logic & API
β βββ constants/ # Feature constants
βββ components/ # Shared components
β βββ home/ # Home page component
βββ scss/ # Global styles
β βββ _variable.scss # Bootstrap SCSS overrides
β βββ _typography.scss # Typography system
β βββ _utilities.scss # Utility classes
β βββ _fonts.scss # Font definitions
βββ app.routes.ts # Application routing
- Standalone Components - No NgModules, modern Angular approach
- Signal-based State - Reactive state management for learning data
- Dependency Injection - Using
inject()function - Type Safety - Strict TypeScript configuration
- Angular 20 - Modern web framework for interactive applications
- TypeScript 5 - Type-safe JavaScript for robust development
- Bootstrap 5 - CSS framework with custom SCSS variables
- SCSS - Advanced CSS preprocessing for custom theming
- Angular CLI - Development and build tools
- ESLint - Code quality and consistency
- Prettier - Code formatting
- Git - Version control
- Node.js 18+
- npm 9+ or yarn 1.22+
- Angular CLI 20+
git clone <repository-url>
cd raganpm installng serveNavigate to http://localhost:4200/ to view the learning platform.
ng build/- Home page with learning platform overview/home- Home page (redirects from root)/students- Student management and progress tracking/students/register- Student enrollment and learning preferences/learning- Interactive learning modules/subjects- Subject and lesson selection/progress- Learning analytics and performance tracking/practice- Interactive exercises and assessments
- Custom SCSS Variables - Override Bootstrap defaults for learning theme
- Responsive Grid - Mobile-first responsive design for all devices
- Utility Classes - Bootstrap utility-first approach
- Custom Components - Enhanced Bootstrap components for learning UI
- Color Palette - Primary, secondary, and semantic colors for learning
- Typography - Inter font family with Playfair Display headings
- Spacing - Consistent spacing scale for content readability
- Shadows - Custom shadow system for depth and focus
# Generate a new learning component
ng generate component learning-module
# Generate a new service
ng generate service learning-service
# Generate a new model
ng generate interface learning-progress# Lint the code
ng lint
# Run tests
ng test
# Build with production optimizations
ng build --configuration production- Mobile First - Designed for mobile devices first, perfect for learning on-the-go
- Breakpoints - Bootstrap responsive breakpoints for all screen sizes
- Touch Friendly - Optimized for touch interactions on tablets and phones
- Accessibility - WCAG compliant design for inclusive learning
- Form Validation - Client-side validation with custom error messages
- Input Sanitization - XSS protection for user-generated content
- Type Safety - TypeScript prevents runtime errors
- Secure Routing - Angular Router security features
- Data Privacy - Secure handling of student learning data
- Lazy Loading - Route-based code splitting for learning modules
- Signal-based Change Detection - Efficient rendering for interactive content
- Tree Shaking - Unused code elimination
- Optimized Bundles - Production build optimizations
- Content Caching - Efficient loading of learning materials
ng testng e2eng buildng build --configuration productiondist/acharya/- Compiled learning platformdist/acharya/browser/- Browser-compatible filesdist/acharya/prerendered-routes.json- Prerendered routes
- Chrome 90+
- Firefox 88+
- Safari 14+
- Edge 90+
- Fork the repository
- Create a feature branch (
git checkout -b feature/amazing-learning-feature) - Commit your changes (
git commit -m 'Add amazing learning feature') - Push to the branch (
git push origin feature/amazing-learning-feature) - Open a Pull Request
This project is licensed under the MIT License - see the LICENSE file for details.
- Angular Team - For the amazing framework powering our learning platform
- Bootstrap Team - For the CSS framework enabling responsive design
- Inter Font - For the beautiful typography enhancing readability
- Playfair Display - For elegant headings in our learning content
For support and questions about the learning platform:
- Create an issue in the repository
- Contact the development team
- Check the documentation
Empowering independent learning with β€οΈ using Angular 20 and modern web technologies