Skip to content

williamniemiec/learning-platform-web

Repository files navigation

Learning Platform - WEB

Learning platform built with PHP.

PHP compatibility MySQL compatibility Release License

Deploy


❇ Introduction

Website project about a learning platform built with PHP along with Selenium framework for testing. It also uses MVC design pattern. This application was made for learning purposes only, not for profit. You can interact with the project through the Heroku platform (click here to access) and access the administration area here.

Login information

Area Email Password
General student@lp.com teste12345@A
Administration admin@lp.com teste12345@A

⚠ Warnings

The hosting service may have a certain delay (~ 1 min) for uploading the application so the loading of the website may have a certain delay.

✔ Requirements

ℹ How to run

  1. Install MySQL v5.7 or greater and to create a database named learning_platform.
  2. Run the SQL files located at src/main/sql in the following order:
1 - tables.sql
2 - views.sql
3 - procedures.sql
4 - triggers.sql
5 - instances.sql
  1. Open src/main/php/environment.php and to comment the line 3 and uncomment the line 2;
  2. Copy all the files to your server application (for example, if you're using Apache, you've to move the files to a folder called 'www');
  3. Install the project dependencies using composer:

composer install

🖼 Gallery

Home

home

Bundle information

bundle

My courses

bundle-edit

Video class

video-class

Settings

settings

Support

support

Support - content

support-content

Admin area - courses manager

courses-manager

Admin area - bundles manager

bundles-manager

Admin area - bundles manager - edit

bundles-manager-edit

🚩 Changelog

Details about each version are documented in the releases section.

🗺 Project structure

architecture

Database

Conceptual diagram

database-conceptual-diagram

Logical diagram

database-logical-diagram

Programs used to create database schematics
Schema Name
Conceptual BRModelo 3.0
Logical MySQL Workbench 8.0

📁 Files

/

Name Type Description
docs Directory Documentation files
panel Directory Admin system
src Directory Application and test files
vendor Directory Composer files
.htaccess File Redirection for correct MVC performance on Apache servers
Procfile File Heroku configuration file
index.php File Application entry point
robots.txt File Tells search engine crawlers which URLs the crawler can access on your site
Web.config File Redirection for correct MVC performance on IIS servers

/src

Name Type Description
main Directory Application files
test Directory Test files

/src/main

Name Type Description
php Directory Code files
sql Directory SQL queries
webapp Directory Image, CSS, and JavaScript files

/src/main/php

Name Type Description
config Directory Classes responsible for the MVC operations
controllers Directory Application controller classes
dao Directory Data access object classes
domain Directory Application domain classes
repositories Directory Classes that handle with database and storage
util Directory Utility classes
views Directory Visual application classes
config.php File System variables
environment.php File System environment