https://github.com/sofyanboukir/marketplace-hub
This platform ensures a secure and dynamic marketplace experience, fostering a vibrant online buying and selling community.
https://github.com/sofyanboukir/marketplace-hub
axios express jwt laravel mongodb mysql react socket-io
Last synced: 9 months ago
JSON representation
This platform ensures a secure and dynamic marketplace experience, fostering a vibrant online buying and selling community.
- Host: GitHub
- URL: https://github.com/sofyanboukir/marketplace-hub
- Owner: sofyanBoukir
- Created: 2024-12-26T11:20:49.000Z (about 1 year ago)
- Default Branch: main
- Last Pushed: 2025-01-23T18:17:29.000Z (about 1 year ago)
- Last Synced: 2025-03-30T01:35:05.301Z (10 months ago)
- Topics: axios, express, jwt, laravel, mongodb, mysql, react, socket-io
- Language: JavaScript
- Homepage:
- Size: 21.7 MB
- Stars: 2
- Watchers: 1
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Marketplacehub platform
The Marketplacehub Platform is a comprehensive application designed to facilitate seamless interactions between buyers and sellers.
It provides a user-friendly interface for users to register, create stores, and post products while offering extensive tools for communication and engagement.
This platform ensures a secure and dynamic marketplace experience, fostering a vibrant online buying and selling community.




## Admin Features
### Dashboard

1. Total Products Posted in the Last 7 Months
2. Total Products Posted by categories
3. Recently Joined Users
4. Recently Posted Products
## User Management

1. View all registered users.
2. Delete user accounts if necessary.
## Product Management


1. View reported products and take action (delete or keep).
2. View pending products and decide whether to accept or delete them.
## Category Management

1. View all product categories.
2. Delete categories as required.
## Store Management

1. View all stores and their creators.
## Team Management

1. View the admin team.
### Super Admins:
1. Add new admins.
2. Delete existing admins.
3. Regular admins cannot add or delete other admins.
## SuperAdmin/Admin profile

## User Features
## Authentication
1. Sign Up: Register a new account, and enter a verification code sended to the email provided.

2. Login: Access the platform with valid credentials.

4. Reset Password: Recover account access using email verification.

## Profile Management

1. Update personal profile information such us fullName, username, profilePicture, birthday, bio
2. Create stores or delete them or update stores data
## Product Interaction
### View Products:
Browse products posted by other users.
Flag inappropriate or suspicious products.
Add products and wait for admin to accept them.


Search for products or users based on keywords or filters.

View the history of previously searched products or users.

Mark products as favorites.

View a products details.
Engage with product posts by leaving comments.
Like products.
copy the product url.
Ask seller if the product is available.

## Notifications
Receive real-time updates, including:
1. Liked your product.
2. Commented on your product.
3. Accepted your product

## Messages (Real-time)
1. Send messages to product sellers.
2. Respond to inquiries from other users.

## View users details (stores, product posted)


# Tech stack
## Technologies used in this app developement
#### Front-end : React js, Tailiwnd css
#### Back-end : Laravel php, express js
#### Databases : MySQL, mongoDB
# Installation
### Set up the laravel backend app
1. Clone the repository
```
git clone https://github.com/sofyanBoukir/Marketplace-hub.git
```
2. laravel backend Setup
```
cd back-end/laravel
composer install
php artisan migrate --seed
php artisan storage:link
```
3. Setup .env file
Change the name from .env.example to .env,
Make you smtp email informations in the .env laravel file, make the databasename as 'marketplace' and setup the username and password and host and DB_CONNECTION=mysql not sqllite
also make sure that the .env file of laravel have the same API_KEY and SECRET_KEY like express if it's not add it.
4. Note!! for betterExperience
Install a product default image name it productDefaultImage.png and set it in public/storage/products
Install a user default image userDefaultImage.jpg and set it in public/storage/users
### Setup the express backend app
1. express backend setup
```
cd backend/express
npm install
```
### Set up the react frontend app
1. react frontend setup
```
cd frontend
npm install
```
## Run the application express then laravel then react
```
npm start
php artisan serve
npm run dev
```