Sheiley Shop
Content
Description
Sheiley Shop is a PWA to track personal purchases, No more paper and pencil to go to the supermarket π¬
Features
- Multi-user
- Multi-languages
- Very intuitive and easy to use, it has a clean interface with few buttons
- List of products
- Favorite products
- Product categories
- Unit of measurement
- Shopping history
- Shopping cart
- And more...
Get started
Requirements:
- PHP 7.1.2 o superior
- Mysql 5.6
- NodeJs 10
- NPM 6.4
- Composer 1.8
Frontend
$ git clone https://github.com/itsalb3rt/sheiley_shop_app.git
$ npm install
$ npm run serve
# or run the next command for production
$ npm run build
API entry point
change the API entry pont in env
file
VUE_APP_API_DEV=http://localhost/sheiley_shop_api
VUE_APP_API_PRO=https://example.com/sheiley_shop_api
π This is all you need to test it in your local environment!
Frontend production
If you hosted the app in subdirectory go to vue.config.js
and set the subdirectory name in publicPath
property
Backend
The REST API is made in PHP so a server with PHP 7.1 or higher is required.
$ git clone https://github.com/itsalb3rt/sheiley-shop-api.git
$ composer require itsalb3rt/sheiley-shop-api
Database
Inside the root directory of the REST API enter etc/sheiley_shop.sql
this file contains all the script from the database.
After executing the script in the Mysql database, it remains to enter the directory config/config.php.ini
and set user database, username and password.
<?php return; ?>
; Database config
host=localhost
user=root
pass=toor
dbname=sheiley_shop
driver=mysql
charset=utf8
collation=utf8mb4_unicode_ci
prefix=""
port=""
Backend production
In the system/webroot/
directory you will find a file named FrontController.php
inside this you must modify the constant ENVIROMENT
and put the value pro
.
Docker
Remember set the .env
file vars before.
$ docker-compose up -d
Extra
Inside the etc
directory of the API REST repository
You will find the entity relationship diagram created in starUML
and the prototype created in Adobe XD
, you can play with this.