ILD Web Application
The ILD Web application is the main web interface for the ILD (Interactive Learning Design) platform. It provides the core functionality for users to interact with learning materials, participate in courses, and manage their learning journey.
Overview
The web application serves as the primary interface for users to engage with the ILD platform. It's built with modern web technologies and focuses on providing a seamless user experience for learning and content interaction.
Technology Stack
- Frontend Framework: React 18
- Build Tool: Vite
- UI Framework: Mantine v7
- State Management: React Query
- Routing: React Router v6
- Type Safety: TypeScript
- HTTP Client: Axios
- Rich Text Editor: TipTap
- Date Handling: Day.js
- Local Storage: LocalForage
- Data Processing: PapaParse
Key Features
- Course browsing and enrollment
- Learning material interaction
- Progress tracking
- Interactive assessments
- Discussion forums
- Resource library
- User profile management
- Learning path customization
- Real-time updates and notifications
Getting Started
Prerequisites
- Node.js (LTS version)
- npm or yarn package manager
Installation
- Clone the repository
- Install dependencies:
bash npm install
Project Structure
ild-web/
├── src/ # Source code
├── public/ # Static assets
├── dist/ # Build output
├── vite.config.ts # Vite configuration
├── tsconfig.json # TypeScript configuration
└── package.json # Project dependencies and scripts
Docker Support
The application includes Docker support for both development and production environments:
Dockerfile- Development environmentDockerfile.prod- Production environment
API Integration
The web application integrates with various ILD platform APIs:
- Authentication API
- Course Management API
- Learning Content API
- Progress Tracking API
- User Profile API
Contributing
Please refer to the main project's contributing guidelines for information on how to contribute to this application.
License
This project is part of the ILD platform and is subject to the same licensing terms as the main project.