Tech School is a web application designed for educational institutions to manage student profiles and course enrollment. It provides students with the ability to edit their profiles, view available courses, and enroll in courses of their choice. This README provides an overview of the Tech School project, including installation instructions and a brief description of its features.
HTML: The foundation of web development.
CSS: Cascading Style Sheets for styling web pages.
JavaScript: Used for interactive web features.
PHP: Server-side scripting language for web development.
Tailwind CSS: A utility-first CSS framework for building modern web applications.
DaisyUI: A plugin for Tailwind CSS that provides a set of beautiful UI components.
JSON: A lightweight data interchange format for storing and exchanging data.
Tech School offers the following features:
Follow the instructions below to get the Tech School web application up and running on your local machine.
To run Tech School, you need the following software:
Clone the repository to your local machine.
git clone https://github.com/EzeibekweEmma/tech-school.git
Navigate to the project directory.
cd tech-school
Install PHP dependencies using Composer.
composer install
Create a .env
file in the project root directory and configure the following variables:
# Database Configuration
DB_HOST=your_database_host
DB_USER=your_database_username
DB_PASS=your_database_password
DB_NAME=your_database_name
# Cloudinary Configuration
CLOUD_NAME=your_cloudinary_cloud_name
API_KEY=your_cloudinary_api_key
API_SECRET=your_cloudinary_api_secret
# Email Configuration
MAIN_EMAIL=your_email_address
PASSWORD=google_app_password
RECEIVER_EMAIL=your_email_address
Set up your database - Schema:
students
CREATE TABLE `students` (
`id` varchar(255) NOT NULL,
`full_name` varchar(255) NOT NULL,
`email` varchar(255) NOT NULL,
`phone` varchar(20) NOT NULL,
`profile_picture` varchar(255) DEFAULT NULL,
`password` varchar(255) NOT NULL,
`background_img` varchar(255) DEFAULT NULL,
`created-time` timestamp NOT NULL DEFAULT current_timestamp() ON UPDATE current_timestamp()
);
enrolled_courses
CREATE TABLE `enrolled_courses` (
`enrollment_id` int(11) NOT NULL,
`student_id` varchar(255) NOT NULL,
`course_id` int(11) NOT NULL,
`course_title` varchar(255) NOT NULL,
`reason` varchar(255) NOT NULL,
`enrolled_time` timestamp NOT NULL DEFAULT current_timestamp()
);
Run the following command to recompile the CSS:
npx tailwindcss -i ./src/styles/input.css -o ./src/styles/output.css --watch
Start your web server and navigate to the Tech School application in your web browser.
http://localhost/tech-school
You can now register an account, log in, and explore the features of Tech School.
Tech School is designed to be a customizable educational platform. You can extend its functionality by adding more features, such as course creation, admin management, and additional user roles. Customize the styles, layouts, and UI to match your institution's branding.
Here are some common usage scenarios:
Contributions to the Tech School project are welcome! Whether you want to report a bug, suggest an improvement, or contribute code, please follow these guidelines:
git checkout -b feature/your-feature-name
or bugfix/your-bug-fix
.git push origin feature/your-feature-name
.main
branch of the original repository.This project is licensed under the MIT License - see the LICENSE file for details.