Official web platform for Edenbridge Grammar School, an institution in Islamabad and Rawalpindi, Pakistan offering a values-anchored, academically rigorous curriculum with the Exel Integrated Learning Framework, blending Islamic values with AI-enhanced personalized learning.
- Visual Showcase & Screenshots
- Overview & Architecture
- Key Features
- Technology Stack
- Project Directory Structure
- Routing & Page Map
- Backend & Database Setup
- Local Development Setup
- Contributors
- Contact & Support
The application is structured as a modern decoupled web platform:
- Frontend: A high-performance Single-Page Application (SPA) built with React 18, leveraging Framer Motion for micro-interactions, Three.js / React Three Fiber for 3D orbital visualizations of school values and neural models, and TailwindCSS with custom responsive styling for displays ranging from mobile devices up to 4K LED screens.
- Backend: Lightweight, secure PHP REST API endpoints with MySQL database persistence, handling student admissions, contact requests, client IP rate-limiting, and automated email notifications.
- Institutional Documents: 8 official school policy documents in PDF format, accessible via interactive flip cards and modal readers.
- 3D Interactive Core Values: Dynamic planetary orbit rendering with Three.js (
CoreValues3D.jsx), featuring interactive hover states, metallic shaders, and real-time animation. - Exel Integrated Curriculum Explorer: Detailed phase-by-phase curriculum breakdowns:
- Foundation Phase (Early Years)
- Formation Phase (Primary Years)
- Orientation Phase (Middle School)
- Direction Phase (High School & O-Levels)
- AI & Neuro-Educational Models: Dynamic visual representations of AI learning frameworks (
AIModelsVisualization.jsxandNeuralDiagram.js). - Online Admission Application: Validated form with asynchronous submission to the backend API (
/api/submit-application.php), client-side feedback, and rate-limit safeguards. - Dynamic Policy Library: Instant access to 8 school policy PDFs (Safeguarding, Data Protection, Code of Conduct, Assessment, Teaching & Learning, AI/Digital Safety guides for parents and students).
- Responsive Display Optimization: Custom CSS media queries supporting ultra-wide landscape viewports (21:9, 32:9) and high-density 4K LED conference displays (
led-display-fix.css). - SEO & Social Optimization: Dynamic page metadata using
react-helmet-async, canonical URLs, JSON-LD structured data, and Google Analytics integration.
| Component | Technology | Version | Purpose |
|---|---|---|---|
| Core Framework | React | ^18.2.0 |
UI component tree and state management |
| Routing | React Router DOM | ^7.13.0 |
Client-side declarative routing |
| 3D Graphics | Three.js | ^0.159.0 |
WebGL 3D scene rendering |
| R3F Integration | @react-three/fiber |
^8.15.0 |
React renderer for Three.js |
| 3D Helpers | @react-three/drei |
^9.92.0 |
OrbitControls, Torus, Spheres, and HTML overlays |
| Animations | Framer Motion | ^10.16.0 |
Scroll-triggered transitions and modals |
| Styling Engine | TailwindCSS | ^3.4.19 |
Utility-first CSS classes |
| PostCSS / Build | @craco/craco |
^5.9.0 |
Custom webpack and PostCSS configuration |
| SEO / Meta | react-helmet-async |
^2.0.5 |
Document <head> tags per route |
| Component | Technology | Purpose |
|---|---|---|
| Language | PHP 8.x | Lightweight REST endpoints |
| Database | MySQL / MariaDB (InnoDB) | Relational storage for applications, contacts, and logs |
| Server Environment | Apache with mod_rewrite & .htaccess |
CORS headers, rewrite rules, and security headers |
| Security | Parameterized SQL (mysqli), HTML sanitization, IP rate limiter |
Injection and spam prevention |
EdenBridge_Grammar/
βββ api/ # Backend PHP endpoints
β βββ .htaccess # Apache routing & CORS headers
β βββ config.php # Database credentials & email settings
β βββ submit-application.php # Admission application form handler
β βββ submit-contact.php # General inquiries handler
βββ database-setup.sql # MySQL schema definition & admin seed
βββ public/ # Static public assets
β βββ policies/ # Official school policy PDFs (8 files)
β βββ hero-video.mp4 # Main homepage looping video
β βββ logo.png # School crest & identity
β βββ favicon.ico # Browser icon
β βββ index.html # HTML entrypoint & GA tag
β βββ robots.txt # Search engine crawler rules
β βββ sitemap.xml # XML site indexing
βββ src/ # Application source code
β βββ assets/ # Static icons and imagery
β βββ components/ # Reusable React components
β β βββ AIModelsVisualization.jsx # Interactive AI models chart
β β βββ CoreValues3D.jsx # 3D planet orbit visualization (R3F)
β β βββ CoreValues3D.css # 3D canvas styling
β β βββ DiscoverModal.js # Video/curriculum discover modal
β β βββ Footer.js / Footer.css # Site footer with map & social links
β β βββ Navbar.js / Navbar.css # Sticky navigation & mobile hamburger
β β βββ NeuralDiagram.js # Visual cognitive network
β β βββ PageTitle.js # Dynamic document title hook
β β βββ ParticleBackground.js # Subtle particle canvas
β β βββ Scene3D.js # Hero WebGL scene
β β βββ ScrollToTop.js # Route change window scroll reset
β β βββ SEO.js # Reusable SEO meta tags component
β βββ pages/ # Routed view components
β β βββ ApplyNow.js # Admissions application form
β β βββ BoardOfDirectors.js # Leadership and governance
β β βββ Careers.js # Job vacancies and submissions
β β βββ Direction.js # Direction Phase (High School / O-Levels)
β β βββ FAQ.js # Flip-card FAQ interactive accordion
β β βββ Formation.js # Formation Phase (Primary School)
β β βββ Foundation.js # Foundation Phase (Early Years)
β β βββ FoundersMessage.js # Founder's vision message
β β βββ IdeologyPageCSS.js # School philosophy & values
β β βββ LearningFramework.js # Exel Integrated Curriculum framework
β β βββ Orientation.js # Orientation Phase (Middle School)
β β βββ Policies.js # Interactive policy PDF library
β β βββ Study.js # Academic programs overview
β βββ App.js / App.css # Homepage master layout
β βββ index.js / index.css # React root mount & global styles
β βββ led-display-fix.css # Large display (4K/LED) responsive overrides
βββ craco.config.js # CRACO PostCSS / Tailwind bridge
βββ tailwind.config.js # Tailwind design tokens & breakpoints
βββ vercel.json # Vercel SPA routing redirects
βββ package.json # NPM project dependencies & scripts
| Route | Page Component | Description |
|---|---|---|
/ |
App.js |
Main landing page, hero video, 3D Core Values, admissions overview |
/our-ideology |
IdeologyPageCSS.js |
School ideology, educational philosophy, Islamic values integration |
/study |
Study.js |
Comprehensive overview of the Exel Integrated Curriculum |
/study/foundation-phase |
Foundation.js |
Foundation Stage: early childhood development and sensory learning |
/study/formation-phase |
Formation.js |
Formation Stage: fundamental literacy, numeracy, and character building |
/study/orientation-phase |
Orientation.js |
Orientation Stage: exploratory thinking and academic readiness |
/study/direction-phase |
Direction.js |
Direction Stage: specialization, Cambridge O-Levels, and leadership |
/study/learning-framework |
LearningFramework.js |
Neuro-pedagogy, AI integration, and personalized education models |
/team/board-of-directors |
BoardOfDirectors.js |
Profiles of school governors, trustees, and academic advisors |
/team/founders-message |
FoundersMessage.js |
Letter from the school leadership and visionary statement |
/team/careers |
Careers.js |
Academic and administrative career openings |
/apply-now |
ApplyNow.js |
Admissions application form with backend integration |
/faq |
FAQ.js |
Interactive flip card FAQ accordion with categorized guidance |
/policies |
Policies.js |
Official school policies library with direct PDF viewing |
The backend handles admission applications and form submissions using a MySQL database.
Execute the queries in database-setup.sql via phpMyAdmin or the MySQL CLI. It creates:
applications: Stores parent name, email, phone, child age bracket, message, submission IP, user agent, and status flags (pending,reviewed,contacted,enrolled,rejected).contact_messages: Handles general questions and contact form data.rate_limiting: Enforces a maximum of 5 submissions per IP within a 24-hour window.admin_users: Manages administrative credentials (includes default admin seed).activity_log: Tracks administrative changes and audit events.
Edit api/config.php to update production database credentials:
define('DB_HOST', 'localhost');
define('DB_USER', 'your_database_user');
define('DB_PASS', 'your_database_password');
define('DB_NAME', 'your_database_name');
define('ADMIN_EMAIL', 'info@edenbridgegrammar.com');
define('SITE_URL', 'https://edenbridgegrammar.edu');- Node.js: v18.x or v20.x
- NPM: v9.x or v10.x
- (Optional for Backend): Local Apache/PHP 8.x stack (e.g., XAMPP, Laragon, or Docker)
-
Clone the repository:
git clone https://github.com/crater-code/EdenBridge_Grammar.git cd EdenBridge_Grammar -
Install frontend dependencies:
npm install
-
Start the local development server:
npm start
If port 3000 is occupied by another process, specify an alternate port:
# PowerShell (Windows) $env:PORT="3001"; npm start # Bash (macOS / Linux) PORT=3001 npm start
-
Access the application:
- Open your browser to
http://localhost:3000(orhttp://localhost:3001).
- Open your browser to
-
Build for Production:
npm run build
- Lead Developer: Muhammad Abdullah Wasim
- Co-Developers: Muhammad Siraj Munir and Arooba Jahangir
- Institution: Edenbridge Grammar School
- Website: https://edenbridgegrammar.edu
- Email: info@edenbridgegrammar.com
- WhatsApp / Phone: +92 333 6274343
- Locations: Islamabad & Rawalpindi, Pakistan
Proprietary β All rights reserved by Edenbridge Grammar School.



