From 3001f1137d3b77a9b4230aa7795e1603234f29b7 Mon Sep 17 00:00:00 2001 From: SteponasK <132608893+SteponasK@users.noreply.github.com> Date: Sun, 31 Mar 2024 19:57:33 +0300 Subject: [PATCH] Updated readme / added image --- README.md | 75 +++++++++++++++++++++++++------------------ readme-img/image.png | Bin 0 -> 39877 bytes 2 files changed, 43 insertions(+), 32 deletions(-) create mode 100644 readme-img/image.png diff --git a/README.md b/README.md index a484353..b20b06e 100644 --- a/README.md +++ b/README.md @@ -1,35 +1,36 @@ -# Symfony Docker +# ERP SIDE for Prestashop Carrier Module 🛒 -A [Docker](https://www.docker.com/)-based installer and runtime for the [Symfony](https://symfony.com) web framework, -with [FrankenPHP](https://frankenphp.dev) and [Caddy](https://caddyserver.com/) inside! - -![CI](https://github.com/dunglas/symfony-docker/workflows/CI/badge.svg) - -## Getting Started - -1. If not already done, [install Docker Compose](https://docs.docker.com/compose/install/) (v2.10+) -2. Run `docker compose build --no-cache` to build fresh images -3. Run `docker compose up --pull always -d --wait` to start the project -4. Open `https://localhost` in your favorite web browser and [accept the auto-generated TLS certificate](https://stackoverflow.com/a/15076602/1352334) -5. Run `docker compose down --remove-orphans` to stop the Docker containers. +ERP SIDE OF Carrier Module made for PrestaShop to easily print PDF Labels of a given Shipment. 🏷️ +![PDF label](readme-img/image.png) ## Features - -* Production, development and CI ready -* Just 1 service by default -* Blazing-fast performance thanks to [the worker mode of FrankenPHP](https://github.com/dunglas/frankenphp/blob/main/docs/worker.md) (automatically enabled in prod mode) -* [Installation of extra Docker Compose services](docs/extra-services.md) with Symfony Flex -* Automatic HTTPS (in dev and prod) -* HTTP/3 and [Early Hints](https://symfony.com/blog/new-in-symfony-6-3-early-hints) support -* Real-time messaging thanks to a built-in [Mercure hub](https://symfony.com/doc/current/mercure.html) -* [Vulcain](https://vulcain.rocks) support -* Native [XDebug](docs/xdebug.md) integration -* Super-readable configuration - -**Enjoy!** - -## Docs - +- 2 controllers +- Unit tests +- Save Customer's information to the Database +- Generate PDF Label of a given customer +- Easy Deployment with Docker +- Github CI/CD Pipelines + +## Prerequisites +- Installed Prestashop Module: [Github link](https://github.com/SteponasK/Prestashop-Shipping) +- Docker +## Installation with Docker: + +### Getting Started +1. Clone the project: + `git clone https://github.com/SteponasK/PrestaShop-Shipping-ERP` +2. If not already done, [install Docker Compose](https://docs.docker.com/compose/install/) (v2.10+) +3. Run `docker compose build --no-cache` to build fresh images +4. Run `docker compose up --pull always -d --wait` to start the project +5. Open `https://localhost` in your favorite web browser and [accept the auto-generated TLS certificate](https://stackoverflow.com/a/15076602/1352334) +6. Run `docker compose down --remove-orphans` to stop the Docker containers. +7. Install [Shipping Module](https://github.com/SteponasK/Prestashop-Shipping). +8. Enjoy! + +## Reminder! +- DONT FORGET TO CHANGE YOUR .ENV information (API_KEY, Database Name, Password) + +## Docs 1. [Build options](docs/build.md) 2. [Using Symfony Docker with an existing project](docs/existing-project.md) 3. [Support for extra services](docs/extra-services.md) @@ -40,10 +41,20 @@ with [FrankenPHP](https://frankenphp.dev) and [Caddy](https://caddyserver.com/) 8. [Troubleshooting](docs/troubleshooting.md) 9. [Updating the template](docs/updating.md) +## Installation the other way: +1. Clone the project: + `git clone https://github.com/SteponasK/PrestaShop-Shipping-ERP` +2. Run Composer Install: +`composer install` +3. Change your .env variables (db & api key) +4. Start Web Server +5. Install [Shipping Module](https://github.com/SteponasK/Prestashop-Shipping). +6. Enjoy! ## License -Symfony Docker is available under the MIT License. +This project is available under the MIT License. +## Authors +- Steponas K ## Credits - -Created by [Kévin Dunglas](https://dunglas.dev), co-maintained by [Maxime Helias](https://twitter.com/maxhelias) and sponsored by [Les-Tilleuls.coop](https://les-tilleuls.coop). +Symfony Docker skeleton was created by [Kévin Dunglas](https://dunglas.dev), co-maintained by [Maxime Helias](https://twitter.com/maxhelias) and sponsored by [Les-Tilleuls.coop](https://les-tilleuls.coop). diff --git a/readme-img/image.png b/readme-img/image.png new file mode 100644 index 0000000000000000000000000000000000000000..ab03ca64c6a27c073f912792bf3d9e1191d53046 GIT binary patch literal 39877 zcmeFZbySpH`!);+A`Jo(f*>j2fPhGMcY_Sl3>}h6cbC-A-HkAWAfVC=-H3#ABi-;` z<9&NS&o7>LeczwoTAypyn&mM2+UK?7ypH2Ik3C^3O42x(%r0lDIde6uAg~rBVbRho;aB&ee8-go@H0t0Di3wX^*Jb7T0 zyPJKVv9YlsqkF&-^&@}C<8ymmYd%zZLmO~Ue{xaXl)sHGz{k&%%rD=X_j8|qiDphn5sRr)u-+VOtuKqqT8zb;=7R!R{V~MC?FwhD+ z_N(_2qP4ti#XW!M1o>0u7g9)Ivq;>&P�ja)2JlQ30)mn19TpgO*)yLt~zRr98v& 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

dLb@gx_BBtOK$kwAP3=9 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 literal 0 HcmV?d00001