Welcome to SwiftStock, a robust and scalable Inventory Management System developed as the final project for the Web Applications Development I course. This repository contains the complete source code for a web-based application built using PHP and MySQL, designed to help users efficiently manage their inventory items through a comprehensive set of features.
- Introduction
- Features
- Prerequisites
- Installation
- Configuration
- Running the Application
- Folder Structure
- Usage
- Troubleshooting
- Credits
SwiftStock is an advanced Inventory Management System tailored to streamline the process of tracking, managing, and reporting inventory items. The system is designed with a user-friendly interface and a powerful backend to handle inventory management tasks efficiently. The application is ideal for businesses of all sizes, allowing users to maintain an organized and up-to-date inventory.
You can view a live demo of the application here: SwiftStock Demo
Defult User Account,
User Name :- user
Password :- User@123
SwiftStock offers a rich set of features designed to make inventory management simple and efficient:
- Add Inventory Items: Users can add new inventory items, complete with details such as name, category, quantity, and value.
- Delete Inventory Items: Easily remove inventory items that are no longer needed.
- Update Inventory Items: Modify existing inventory items to keep information current.
- View Inventory Items: Display a list of all inventory items with sortable and filterable columns.
- Category Management: Add or delete categories for better organization and classification of inventory items.
- Search by Name: Quickly find items by searching their names.
- Search by ID: Locate specific items using their unique identifiers.
- Search by Category: Filter inventory items based on their assigned categories for quicker access.
- Current Inventory Reports: Generate detailed reports that summarize the current inventory, including total items, total quantity, and total value.
- CSV Export: Export inventory reports in CSV format for easy sharing, analysis, and archival.
- Graphical Representations: View inventory data through various graphical charts to gain better insights into inventory status and trends.
- User Registration: Allow new users to sign up and create their own accounts.
- Profile Management: Users can update their profiles, including changing their details or updating their passwords.
- Account Deletion: Users can delete their accounts if they no longer wish to use the system.
Before setting up the SwiftStock application, ensure your environment meets the following requirements:
- PHP 7.4+: The application is built using PHP, and a version of 7.4 or higher is required.
- MySQL 5.7+: A MySQL database is necessary to store the application's data.
- Apache Web Server: The application is designed to run on an Apache web server.
- Web Browser: Ensure your web browser is JavaScript-enabled for full functionality.
Follow these steps to install the SwiftStock application on your local or server environment:
-
Clone the Repository: Use Git to clone the repository to your local machine. Run the following command in your terminal, replacing
YOUR-USERNAME
with your GitHub username:git clone https://github.com/YOUR-USERNAME/SwiftStock-Inveventory_Management_System.git
-
Move the Project Folder: After cloning, move the root folder of the project to the deployment directory of your web server. For Apache, this is typically the
htdocs
folder. -
Create the Database: Using MySQL or a tool like phpMyAdmin, create a new database named
swiftstock
. -
Import the Database Schema: Import the
SwiftStock.sql
file located in the project repository into your newly createdswiftstock
database. This file contains all the necessary SQL queries to set up the database structure and initial data.
Before running the application, update the database configuration to match your environment:
-
Locate the Database Configuration File: The file responsible for database connections is named
DBconnection.php
. You can find it in the root directory. -
Update the Configuration: Open the
DBconnection.php
file and replace the placeholders with your actual database credentials:// Hostname define('DB_HOST', 'YOUR-HOST-NAME'); // <-- Enter your hostname, usually 'localhost' // DB user define('DB_USER', 'YOUR-USERNAME'); // <-- Enter your MySQL username // DB password define('DB_PASSWORD', 'YOUR-PASSWORD'); // <-- Enter your MySQL password // Database name define('DB_NAME', 'swiftstock'); // <-- Enter the name of your database
-
Save the Changes: Ensure the changes are saved before proceeding to run the application.
To start using the SwiftStock application:
-
Start Apache and MySQL: Ensure both Apache and MySQL services are running on your server.
-
Deploy the Project: Place the project directory in the Apache server root or configure a virtual host to point to the project directory.
-
Access the Application: If you are using Apache server, open your web browser at
http://localhost/SwiftStock-Inveventory_Management_System/Project/
. Or, if you are using a virtual host, configure it to point to the project directory. -
Default users:
- User name :-
user
- Password :-
User@001
- User name :-
The project follows a structured organization of files and directories:
index.php
: The landing page of the application where users are greeted.Components/
: Contains reusable components such as headers and footers.Components/navigation/
: Houses the navigation links and menus used throughout the application.images/
: Contains all the images used in the application, such as logos and icons.
After setting up and running the application, users can perform the following tasks:
- Registration: New users can sign up via the
register.php
page. - Login: Existing users can log in using their credentials on the
login.php
page. - Profile Management: Users can manage their profiles, including updating their personal information or passwords.
- Add Items: Use the
manage_inventory.php
page to add new items to the inventory. - Update Items: Modify existing items through the same page.
- Delete Items: Remove outdated or unnecessary items from the inventory.
- Search Items: Use the
search.php
page to search for items in the inventory. - Search by ID: Locate specific items using their unique identifiers.
- Search by Category: Filter inventory items based on their assigned categories for quicker access.
- Search by Name: Quickly find items by searching their names.
- Generate Reports: Access
createReport.php
to generate comprehensive reports on the current inventory status. - View Graphs: Visualize inventory data through various graphs for better decision-making.
Here are common issues and their solutions:
- Issue: Unable to connect to the database.
- Solution: Ensure your MySQL server is running. Verify that your credentials in
DBconnection.php
are correct and that the database exists.
- Issue: Encountering PHP errors or warnings.
- Solution: Enable error reporting in PHP by setting
display_errors
toOn
in yourphp.ini
file. Review the error messages to identify and fix issues in the code.
SwiftStock was developed by Group 8 as the final project for the Web Applications Development - I course. The team members contributed to various aspects of the project, including front-end design, back-end development, database management, and testing.
Team Members: Group 8