pars/pars-master

This package is auto-updated.

Last update: 2022-08-14 16:05:50 UTC


README

Build Status Coverage Status

PARS Master is primarily used for development and testing of the PARS Framework and CMS. It combines all modules in one project for development.

Installation

Clone this repository:

$ git clone https://github.com/pars-framework/pars-master.git
$ cd pars-master
$ git submodule init
$ git submodule update
$ git submodule foreach --recursive git checkout master

WITH DOCKER

User PHP Storm to with the included run configuration for the development container. This option should automatically appear when opening the project.

WITHOUT DOCKER

Install PHP 8.0 and composer

Ubuntu 20.04:

$ sudo apt update
$ sudo apt install php php-cli php-fpm php-json php-common php-mysql php-pdo-mysql php-zip php-gd php-mbstring php-curl php-xml php-pear php-bcmath
$ curl -sS https://getcomposer.org/installer -o composer-setup.php
$ sudo php composer-setup.php --install-dir=/usr/local/bin --filename=composer

macOS:

$ brew install php@8.0
$ brew install composer

Moreover you need to setup MariaDB.

Install project dependencies

#navigate to project folder
$ composer install
$ composer update
$ composer run-script serve --timeout=0

Add entry to hosts file

$ sudo nano /etc/hosts
127.0.0.1       admin.localhost
127.0.0.1       api.localhost
127.0.0.1       localhost.com
127.0.0.1       localhost.de
127.0.0.1       localhost.at

Setup a MariaDB database and user and then open admin.localhost:8080 in a browser and enter db config. To setup the database you can use MySQL workbench https://www.mysql.com/products/workbench/, command line interface or any other MySQL client. Done. Now open the project in your favourite editor and start developemnt.

Frontend should be available at localhost:8080

Admin should be available at admin.localhost:8080

Guidelines

This dependency graph must be followed so that the individual packages can be used in other projects.

Packages must only use classes upwards in the structure.

Examples:

  • Component must not use any classes from Model.
  • Model must not use any classes from Component.
  • Admin can use all classes.
  • Pattern must not use any classes from any other package.
  • Core must not use classes form Model.

Documentation

work in progress Browse the documentation online at https://docs.parsphp.org/pars-master/

Contributing

Pull requests are welcome. For major changes, please open an issue first to discuss what you would like to change.

In general, we follow the "fork-and-pull" Git workflow:

  1. Fork the repo on GitHub
  2. Clone the project to your own machine
  3. Commit changes to your own branch
  4. Push your work back up to your fork
  5. Submit a Pull request so that we can review your changes

Please refer to the project's guidelines for submitting patches and additions and make sure to update tests as appropriate.

NOTE: Be sure to merge the latest from "upstream" before making a pull request!

Support

work in progress