Electronic library management website
- About
- Screenshots
- Built Using
- Prerequisites
- Getting Started
- Troubleshooting
- Future Work Recommendations
- Contributing
- License
- Authors
Maktabati is a PHP web project designed for managing an electronic library. This project includes a control panel that allows you to efficiently manage your library's resources. You can easily add, delete, and edit both books, authors, and categories, making it a powerful tool for library administration.
- Library Management: Add, delete, and edit books, authors, and categories.
- Advanced Search: Utilize the advanced search feature to find specific resources within the library.
- Book Information: View detailed information about each book, including ratings.
- Electronic Copies: Upload electronic copies of books for easy access.
Here are some screenshots of the project:
Login Page:
Books List Page:
Categories List Page:
Authors List Page:
Advance Search Page:
Book Details Page:
Before you begin, ensure you have met the following requirements:
- PHP (>= 8.2.4) installed on your local machine.
- Apache (>= 2.4.56) installed and configured.
- MySQL (>= 8.2.4) or MariaDB database server.
- Git You'll need Git to clone the repository.
These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.
Open your terminal/command prompt and run the following command to clone the repository:
git clone https://github.com/MohammedShwabi/maktabati
- Configure your web server to serve the project from the cloned directory. For example, with Apache, you can create a virtual host configuration:
<VirtualHost *:80>
ServerName maktabati.local
DocumentRoot "/path/to/maktabati"
<Directory "/path/to/maktabati">
Options Indexes FollowSymLinks
AllowOverride All
Require all granted
</Directory>
</VirtualHost>
Replace "/path/to/maktabati" with the actual path to your project directory.
- Update your system's hosts file to point the domain to your local machine. On most systems, you can find this file at /etc/hosts (Linux/Mac) or C:\Windows\System32\drivers\etc\hosts (Windows). Add an entry like this:
127.0.0.1 maktabati.local
- Create a MySQL or MariaDB database for maktabati. You can do this using a tool like phpMyAdmin or via the command line:
CREATE DATABASE maktabati;
- Import the
maktabati.sql
file into your newly created database. You can do this using the command-line MySQL client:
mysql -u your_username -p maktabati < maktabati.sql
Replace 'your_username' with your database username and enter the corresponding password when prompted.
- Verify that the tables and test data have been imported successfully:
USE maktabati;
SHOW TABLES;
This should display a list of tables, indicating that the database setup was successful.
Now that you have set up the project and the database, you can run the maktabati project on your local web server. Open a web browser and navigate to http://maktabati.local (or the domain you configured in your web server).
- enter the following credential to login to the web panel:
email: mohamed@gmail.com
password: 123
If you encounter any issues during the setup process, refer to the PHP documentation or search for solutions on Stack Overflow.
While the current version of Maktabati is functional, there are several areas where the project can be further developed and enhanced:
- π₯ User management system.
- π€ User pages and user profiles.
- π Support for multiple languages for books, authors and publishers.
- π§Ή Sorting and filtering options for books.
- π₯ Ability to associate multiple authors with a book.
If you are interested in contributing to the project, consider working on these future enhancements to make Maktabati even better!
A mobile app version of maktabati is also available. You can find the mobile app implementation of this project on GitHub:
The mobile app complements the web project and extends its functionality to mobile devices, providing a seamless user experience across platforms. Feel free to check it out and contribute to both the web and mobile versions of maktabati!
If you'd like to contribute to the project, feel free to submit pull requests.
This project is licensed under the MIT License.
See also the list of contributors who participated in this project.