Skip to content

Website for Hogwarts the magical school (Frontend + Backend) 🔮🪄

Notifications You must be signed in to change notification settings

r6mez/Hogwarts-For-Programming

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

63 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Hogwarts for Programming 🪄🔮

A web-based platform inspired by the magical world of Hogwarts, designed to teach programming through interactive courses, quizzes, and challenges. Users can enroll in courses, solve quizzes, and track their progress on leaderboards.

This project was completed in collaboration with Rahf and Badr as part of the IEEE ZSB Backend track.

Demo Images

Below are some demo images of the project:

  • Login Page
    Login Page

  • Home Page
    Home Page

  • Diagon Alley Page
    Diagon Alley

  • Course Enroll Page
    Course Enroll Page

  • Quizzes Page
    Quizzes Page

  • Solve Quiz Page
    Solve Quiz Page

  • Leaderboard Page
    Leaderboard

  • Profile Page
    Profile Page

  • Dashboard
    Dashboard

Contribution

Follow these steps to set up the project on your local machine:

Prerequisites

  1. Install PHP (version 7.4 or higher).
  2. Install Composer, the dependency manager for PHP.
  3. Install MySQL or any compatible database.

Setup Instructions

  1. Clone the repository:

    git clone https://github.com/r6mez/Hogwarts-For-Programming.git
    cd Hogwarts-For-Programming
  2. Install dependencies using Composer:

    composer install
  3. Set up the database: run queries in schema/schema.sql and to populate database run schema/query.sql, and to view database settings head to config/config.php.

  4. Start the development server:

    php -S localhost:8000 -t public
  5. Open your browser and navigate to http://localhost:8000.

Project Structure

  • public/: Contains public-facing files, including the entry point index.php and static assets.
  • src/: Core application logic, including controllers, validators, and utility classes.
  • config/: Configuration files, such as database credentials and route definitions.
  • Schema/: SQL scripts for setting up the database schema.
  • vendor/: Composer dependencies (generated after running composer install).
  • .gitignore: Specifies files and directories to exclude from version control.
  • README.md: Documentation for setting up and understanding the project.

ERD

ERD

About

Website for Hogwarts the magical school (Frontend + Backend) 🔮🪄

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •  

Languages