Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/prolic/fpp

Functional PHP Preprocessor - Generate Immutable Data Types
https://github.com/prolic/fpp

code-generation code-generator datatypes ddd enum functional immutable php prooph

Last synced: 5 days ago
JSON representation

Functional PHP Preprocessor - Generate Immutable Data Types

Awesome Lists containing this project

README

        

# FPP

## Functional PHP Preprocessor - Immutable data type generator

This library can generate immutable data types based on fpp definitions. The syntax is inspired by Haskell.

[![Build Status](https://travis-ci.org/prolic/fpp.svg?branch=master)](https://travis-ci.org/prolic/fpp)
[![Coverage Status](https://coveralls.io/repos/github/prolic/fpp/badge.svg?branch=master)](https://coveralls.io/github/prolic/fpp?branch=master)

## Sponsor

If you want to support my work, become a patron at [patreon.com/prolic](https://www.patreon.com/notifications).

## Credits

[Marcello Duarte](https://github.com/MarcelloDuarte/) created the [ParserCombinators](https://github.com/MarcelloDuarte/ParserCombinators/) project in 2017.
The rewrite of this library is heavily inspired by it and reuses some of its base functions.

## Docs

[See the docs here](https://github.com/prolic/fpp/tree/master/docs/Home.md)

## Install

```console
composer require prolic/fpp dev-master
```

## Usage

Disable xdebug or increase xdebug.max_nesting_level in your php.ini file.

```php
php vendor/bin/fpp.php
```

## Generate configuration

```php
php vendor/bin/fpp.php --gen-config
```

You can then modify the config file to adjust to your needs.

## Changes from 0.1.0 Release

This library has been rewritten from scratch. If you want to use the old version, pin your composer requirement to 0.1.0.

The master branch is not compatible at all.