This project is a MERN Stack library project . Follow the instructions below to set up and run the application.
Before you begin, ensure you have Node.js and npm installed on your machine.
-
Node.js: Download and install Node.js
-
XAMPP: Download and install XAMPP
-
Database file: Download and import in XAMPP
-
Upload folder: Download and Extract to library-react-app\server
-
Clone the repository to your local machine:
git clone https://github.com/yousefHelly/library-react-app.git
-
Navigate to the project directory:
cd library-react-app -
Install dependencies using npm:
npm install -
Navigate to the backend directory:
cd server -
Install backend dependencies:
npm install -
Set Up Upload Folder:
- Navigate to the
serverdirectory within the project (library-react-app\server). - Unzip the contents of the
upload.rarfile in this directory. Ensure that theuploadfolder is located within thelibrary-react-app\serverdirectory.
- Setting Up MySQL Database with XAMPP:
-
Start XAMPP and ensure that Apache and MySQL server are running.
-
Open the phpMyAdmin interface by visiting http://localhost/phpmyadmin/ in your web browser.
-
Create a new database for the project with the name
libraryand Import the database file that contains all the necessary tables for the application to run.
Once the installation and database setup are complete, you need to run both the React app and the Express backend server. Open two separate terminals for the following steps:
Open a terminal and navigate to the project directory then run the following command to start the development server for the React app:
npm run dev
Visit http://localhost:5173 in your web browser to view the application.
Open another terminal and navigate to the server directory then run the Express backend server:
npm run dev
The backend server will be running at http://localhost:3000.
This application does not have a user registration system. Instead, the admin has the ability to add, edit, or delete users. If you encounter any difficulties initially, use the following admin email and password to log in and create users later:
- Admin Email:
youssefhelly@gmail.com - Admin Password:
123456789
I am currently considering the implementation of a user registration system in the near future.
If you'd like to contribute to this project, please fork the repository and create a pull request. Ensure you follow the project's coding standards and guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.