This repository contains the source code and documentation for Computer & Information Sciences featuring Al-Qalam University Katsina (AUK).
This project aims to enhance the current AUK website by improving its design, usability, and functionality. Key improvements include a modern user interface, responsive design, and additional features to better serve students, faculty, and visitors.
- Faculty Dashboard: Provides a central overview of key information and metrics.
- Student Management: Enables officials to manage student data, academic records, and profiles.
- Course Management: Allows easy course schedules, materials, and related data management.
- Staff Management: Facilitates staff data management, including profiles, departments, and roles.
- Announcements: A platform to send out faculty-wide announcements and notifications.
- Document Management: Secure storage and retrieval of important faculty-related documents.
- Performance Reports: Generate reports on faculty performance, student achievements, and academic activities.
The project leverages the following technologies:
- HTML5: A markup language for structuring content on the web.
- CSS3: Style sheet language for describing the presentation of web pages.
- JavaScript: Programming language for creating interactive and dynamic web content.
- Tailwind CSS: Utility-first CSS framework for building custom designs.
- PHP: Server-side scripting language for dynamic web content.
- Laravel: PHP framework for building robust web applications.
- MySQL: Relational database management system for data storage and retrieval.
- Color Scheme: Use the 60/30/10 color rule for the design. This rule suggests that 60% of the color scheme should be a dominant color, 30% should be a secondary color, and 10% should be an accent color to create visual interest and balance.
- Database Column Naming: All database column names must comply with the lowercase and underscore format. For example, use
first_nameinstead ofFirstNameorfirstName. - Database: The project must use MySQL as the database system.
To get started with the project, follow these steps:
Ensure you have the following installed on your system:
-
PDO (PHP Data Object) is mandatory for this project, no use of Procedural PHP.
-
Clone the Repository
Clone the repository to your local machine using the following command:
git clone https://github.com/KabriAcid/auk-web.git
-
Navigate into the Project Directory
Navigate into the project directory:
cd auk-web -
Install PHP Dependencies
Use Composer to install all PHP dependencies required by the project:
composer install
-
Install Node.js Dependencies
Use npm to install all Node.js dependencies required for frontend assets:
npm install
-
Create a Copy of the Environment File
Copy the
.env.examplefile to.env:cp .env.example .env
-
Generate an Application Key
Generate the application key for the Laravel application:
php artisan key:generate
-
Set Up the Database
-
Open the
.envfile and update the database configuration to match your local setup:DB_CONNECTION=mysql DB_HOST=127.0.0.1 DB_PORT=3306 DB_DATABASE=your_database_name DB_USERNAME=your_username DB_PASSWORD=your_password
-
Run the database migrations to set up the necessary tables:
php artisan migrate
-
-
Serve the Application
Start the development server:
php artisan serve
-
Compile Assets
Compile the frontend assets using Laravel Mix:
npm run dev
For production:
npm run prod
For deployment to a production environment, follow these additional steps:
-
Optimize the Application
Optimize the Laravel application for production:
php artisan optimize
-
Set Up a Web Server
Ensure you have a web server like Apache or Nginx configured to serve the Laravel application.
-
Run Database Migrations
Run migrations on the production server to ensure the database is up to date:
php artisan migrate --force
-
Compile Assets for Production
Ensure assets are compiled for production:
npm run prod
Supported Operating Systems:
- Windows 10/11
- macOS Big Sur or later
- Ubuntu 20.04 LTS or later
Special Instructions:
- Windows users: Ensure you have WSL2 set up for a smoother development experience.
- macOS users: Use Homebrew to manage dependencies efficiently.
- Linux users: Make sure all required packages are installed via apt or other package managers.
VS Code:
- Install the following extensions:
- PHP Intelephense
- Laravel Snippets
- GitLens
Sublime Text:
- Ensure Package Control is installed.
- Recommended Packages:
- SublimeLinter
- GitGutter
- Laravel Blade Highlighter
PHPStorm:
- Take advantage of the built-in support for PHP and Laravel.
- Recommended Plugins:
- Laravel Idea
- PHP Annotations
- Git ToolBox
Use of Blackbox:
- The use of Blackbox is required for generating faster and standardized commit messages.
- This will ensure consistency and save time during the commit process.
This palette is based on the colors from the Al-Qalam University Katsina logo:
- Cream:
#f3ecc8- Used in the background and banner. - Green:
#3c8542- Found in the text "AL-QALAM UNIVERSITY KATSINA" and the ribbon. - Maroon:
#8e2b1a- Seen in the central emblem with the Arabic script.
This palette is based on the primary color #93152b:
- Primary Color:
#93152b- A deep maroon, rich and bold. - Complementary Color:
#3c8542- A contrasting green, matching the text and ribbon in the logo. - Accent Color:
#f3ecc8- A soft cream, providing a subtle background contrast.
This palette includes a simple combination of white, black, and gray:
- White:
#FFFFFF- Pure white, ideal for backgrounds or highlights. - Black:
#000000- Pure black, perfect for text or strong contrasts. - Gray:
#808080- A balanced mid-gray, suitable for neutral areas or subtle contrasts.
- Abdullahi Abubakar Kabri - kabriacid01@gmail.com
- Mohammed Mubarak Sani - mohammedmubaraksani@gmail.com
- Al-Amin Bashir Babuga - alameenbabuga@gmail.com
- Muhammad Musa Jidda - muhammadmjidder8@gmail.com ~ LinkedIn ~ @Musajidda6236
- Abdulrahman Kalli Mustapha - kmustapha9564@gmail.com ~ LinkedIn ~ @KMusty_