|
|
|
<div align="center">
|
|
|
|
<img src="media/xstack-shop-logo.svg" alt="xshop logo" width="600">
|
|
|
|
</div>
|
|
|
|
|
|
|
|
# xShop
|
|
|
|
|
|
|
|
x-shop is an open source shop developed in laravel, very customizable!
|
|
|
|
|
|
|
|
## xshop features
|
|
|
|
|
|
|
|
- Product category manager
|
|
|
|
- product categories tree
|
|
|
|
- product category sotable
|
|
|
|
- product category metable
|
|
|
|
- product category image + thumbnail
|
|
|
|
- Product manager
|
|
|
|
- product fields
|
|
|
|
- name
|
|
|
|
- base price
|
|
|
|
- main category
|
|
|
|
- categories
|
|
|
|
- sku code
|
|
|
|
- abstract
|
|
|
|
- description
|
|
|
|
- tags
|
|
|
|
- product quantity + managing store
|
|
|
|
- product discount
|
|
|
|
- product multi images + thumbnail
|
|
|
|
- product metable
|
|
|
|
- orders & invoice
|
|
|
|
- customer & clients
|
|
|
|
- multi address
|
|
|
|
- can define clients as colleague
|
|
|
|
- customer control panel
|
|
|
|
- question and answer
|
|
|
|
- ticking system
|
|
|
|
- transport manager
|
|
|
|
- meta properties
|
|
|
|
- post manager
|
|
|
|
- post categories
|
|
|
|
- gallery manager
|
|
|
|
- nav menu manager
|
|
|
|
- slider & carousel manager
|
|
|
|
- comments manager
|
|
|
|
- settings
|
|
|
|
- attachment system
|
|
|
|
- admins logs
|
|
|
|
- user & admin mananger
|
|
|
|
- polling system
|
|
|
|
- advertise system
|
|
|
|
- supported pay gateways:
|
|
|
|
- zarinpal
|
|
|
|
- zibal
|
|
|
|
- pay.ir
|
|
|
|
- saderat bank
|
|
|
|
- melat bank
|
|
|
|
- parsian bank
|
|
|
|
- & etc, like as customzied search and compare products
|
|
|
|
|
|
|
|
## License
|
|
|
|
xShop developed under `GPL-3` license, So don't worry it will be opensource for ever!
|
|
|
|
|
|
|
|
[![GPLv3 License](https://img.shields.io/badge/License-GPL%20v3-yellow.svg)](https://opensource.org/licenses/GNU)
|
|
|
|
|
|
|
|
|
|
|
|
[GPL](https://www.gnu.org/licenses/gpl-3.0.en.html)
|
|
|
|
|
|
|
|
## Develop guide
|
|
|
|
|
|
|
|
### Requirement
|
|
|
|
|
|
|
|
- php 8.1 [ `php-gd`, `sqlite3`, `php-soap` ]
|
|
|
|
- mysql or mariadb
|
|
|
|
- composer
|
|
|
|
|
|
|
|
### Development config & commands
|
|
|
|
|
|
|
|
Create new database and rename `.env.example` to `.env` then update you `.env` configs so run this commands:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
git clone https://github.com/4xmen/xshop.git
|
|
|
|
cd xshop
|
|
|
|
composer install
|
|
|
|
php artisan migrate --seed
|
|
|
|
php artisan storage:link
|
|
|
|
php key:generate
|
|
|
|
php artisan serv
|
|
|
|
```
|
|
|
|
now login to admin panel `http://localhost:8000/dashboard` default admin email is : `admin@example.com` and default password is: `password`
|
|
|
|
|
|
|
|
|
|
|
|
## Deploy guide
|
|
|
|
|
|
|
|
We recommend deploy xshop on VPS, so create databse and run this commands
|
|
|
|
|
|
|
|
```bash
|
|
|
|
cd /home/[yourUsername]/[pathOfYourWebsitePublicHTML]
|
|
|
|
git clone https://github.com/4xmen/xshop.git . # if this command not work make empty this folder
|
|
|
|
cp .env.example .env
|
|
|
|
nano .env # edit your config db, url, etc.
|
|
|
|
composer install
|
|
|
|
php artisan migrate
|
|
|
|
php artisan db:seed --class=UserSeeder
|
|
|
|
php artisan db:seed --class=SettingSeeder
|
|
|
|
nano .env # make APP_DEBUG false, APP_ENV production
|
|
|
|
php artisan storage:link
|
|
|
|
php key:generate
|
|
|
|
composer install --optimize-autoloader --no-dev
|
|
|
|
```
|
|
|
|
|
|
|
|
### Add cron job
|
|
|
|
|
|
|
|
You must add crontab for your project:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
crontab -e
|
|
|
|
```
|
|
|
|
|
|
|
|
Add this line:
|
|
|
|
```bash
|
|
|
|
* * * * * cd /home/[yourusername]/[your-public-html-project-root] && php artisan schedule:run >> /dev/null 2>&1
|
|
|
|
```
|
|
|
|
|
|
|
|
## Contribute & support
|
|
|
|
|
|
|
|
We are so pleased to your help and help you, If you wanna develop xshop, Congrats or
|
|
|
|
if you have problem, don't worry create an issue here:
|
|
|
|
|
|
|
|
```
|
|
|
|
https://github.com/4xmen/xshop/issues
|
|
|
|
```
|
|
|
|
|
|
|
|
## Test
|
|
|
|
|
|
|
|
Note: The test must be run on development version, and test command is:
|
|
|
|
|
|
|
|
```bash
|
|
|
|
php artisan test
|
|
|
|
```
|
|
|
|
|
|
|
|
## Screen shots
|
|
|
|
|
|
|
|
![1](./media/shopscreenshot1.png)
|
|
|
|
![2](./media/shopscreenshot2.png)
|
|
|
|
![3](./media/shopscreenshot3.png)
|
|
|
|
![4](./media/shopscreenshot4.png)
|
|
|
|
![5](./media/shopscreenshot5.png)
|
|
|
|
![6](./media/shopscreenshot6.png)
|
|
|
|
![6](./media/shopscreenshot7.png)
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div align="center"> Developed With Love ! ❤️</div>
|