A modern, aesthetic web interface for a Quran Learning Platform with animated backgrounds, glassmorphism effects, and clean responsive design. The platform provides features such as user authentication, quizzes, gamification, and content management, allowing users to engage with the Quran in an interactive way.
- Fixed CSS Loading Issues: Resolved static asset serving problems
- Eliminated Duplicate CSS: Cleaned up 1776-line bloated CSS to 778 lines
- Modern Design Implementation: Added gradient backgrounds, glassmorphism effects, and smooth animations
- Cross-Page Consistency: Ensured uniform styling across all pages
- Animated Gradient Backgrounds: Multiple moving gradients with smooth transitions
- Glassmorphism Effects: Semi-transparent cards with blur effects
- Modern Color Palette: Rich gradients and professional color schemes
- Responsive Layout: Mobile-first design approach
- Smooth Animations: Hover effects, transitions, and loading states
- Frontend: HTML5, CSS3, JavaScript (ES6+)
- Backend: Node.js (Express) + Python (Flask)
- Database: MySQL
- Deployment: Docker Compose
- Design: Modern CSS with custom properties, animations, and glassmorphism
- Performance Optimization: Reduced CSS file size by 56%
- Visual Enhancement: Transformed plain white backgrounds into dynamic animated gradients
- Code Quality: Eliminated duplicate CSS rules and improved maintainability
- User Experience: Added smooth transitions, hover effects, and loading states
- Cross-Browser Compatibility: Ensured consistent appearance across browsers
- ✅ Homepage (
/) - Modern landing page with animated background - ✅ Login Page (
/login) - Glassmorphism form with smooth transitions - ✅ Search Page (
/search) - Enhanced search interface - ✅ Quiz Pages (
/quizzes,/quiz) - Interactive quiz interface - ✅ Profile Page (
/profile) - User dashboard with modern styling - ✅ Verse Page (
/verse) - Quran verse display with elegant typography
# Start all services
docker-compose up -d
# Check status
docker-compose ps
# Access the application
# Web Interface: http://localhost:3000
# API Server: http://localhost:5000
# Database: localhost:3306- CSS Size: Reduced from 1776 to 778 lines (56% reduction)
- Loading Speed: Improved with optimized CSS and eliminated duplicates
- UI Responsiveness: Smooth 60fps animations and transitions
- Cross-Page Consistency: 100% styling consistency across all pages
- All static assets are served via Express from
/publicdirectory - CSS uses modern features like custom properties and advanced selectors
- JavaScript modules are organized by functionality
- Docker containers ensure consistent development environment
- ✅ All pages load correctly (HTTP 200 responses)
- ✅ CSS animations work smoothly
- ✅ Responsive design tested
- ✅ Cross-browser compatibility verified
- ✅ Docker containers running successfully
Last Updated: July 7, 2025
Status: Production Ready
Version: 2.0 (Modern UI Overhaul)
The project is organized into the following main directories and files:
-
public/: Contains static assets such as CSS and JavaScript files.
- css/: Stylesheets for the application.
style.css: Defines the visual appearance of the web pages.
- js/: JavaScript files for client-side functionality.
auth.js: Handles authentication-related functionality (login, registration).content.js: Manages content display and interactions.gamification.js: Implements gamification features (tracking progress, awarding badges).quiz.js: Manages quiz functionality (loading quizzes, handling responses).search.js: Provides search functionality for verses or topics.
- css/: Stylesheets for the application.
-
views/: Contains HTML files for the user interface.
index.html: Main landing page of the application.login.html: User login interface.profile.html: Displays user profile information.quizzes.html: Lists available quizzes.quiz.html: Presents a specific quiz.search.html: Allows users to search within the Quran.verse.html: Displays a specific verse.
-
routes/: Contains Python files for API endpoints.
auth_api.py: API endpoints for user authentication.content_api.py: API endpoints for fetching Quranic content.gamification_api.py: API endpoints for gamification features.quiz_api.py: API endpoints for quizzes.search_api.py: API endpoints for search functionality.
-
app.js: Main server file that sets up the server, middleware, and routing. -
package.json: Configuration file for npm, listing dependencies and scripts. -
README.md: Documentation for the project.
- Prerequisites: Ensure you have Node.js and MySQL Server installed on your machine.
- Clone the Repository: Clone this repository to your local machine.
- Install Dependencies:
- Navigate to the project root directory.
- Run
npm installto install Node.js dependencies. - Install Python dependencies using
pip install Flask flask-mysql-connector-python PyJWT werkzeug httpx.
- Set Up the Database:
- Create a new database named
quran_platform_db. - Run the provided SQL schemas to set up the necessary tables.
- Create a new database named
- Configure the API:
- Update the database configuration in the Python API files to match your local setup.
- Run the Application:
- Start the server by running
node app.js. - Access the application at
http://localhost:3000.
- Start the server by running
Once the application is running, users can register, log in, take quizzes, and explore Quranic content. The platform aims to provide an engaging and educational experience for users interested in learning about the Quran.