Skip to content

Commit

Permalink
revamped
Browse files Browse the repository at this point in the history
  • Loading branch information
csgoh committed Jul 23, 2023
1 parent 84a0420 commit c5d062e
Showing 1 changed file with 45 additions and 62 deletions.
107 changes: 45 additions & 62 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -11,68 +11,22 @@
[![Twitter Follow](https://img.shields.io/twitter/follow/CSGohNZ?style=social)](https://twitter.com/CSGohNZ)

# ProcessPiper (Business Process Diagram as Code)
A python library to generate business process diagram using code.
ProcessPiper is an open source python library to generate business process diagram using python code or [PiperFlow](https://github.com/csgoh/processpiper/wiki/Usage-Documentation#syntax) syntax.

## Why ProcessPiper?
1. Generate professional business process diagrams with Python code, eliminating the need for manual drawing and complex tools.
2. Improve teamwork by utilising source code repositories for change monitoring, collaboration, and diagram history.
3. Enhance precision by generating diagrams with code, sharing/exporting them in PNG format, and integrating them with Python tools.
<h3 align="center">
<b><a href="https://github.com/csgoh/processpiper/wiki/installation">Installation</a></b>
<b><a href="https://github.com/csgoh/processpiper/wiki/Usage-Documentation">Usage Guide</a></b>
<b><a href="https://github.com/csgoh/processpiper/wiki/Change-Logs">Changelogs</a></b>
</h3>


# Features
* Generate business process diagrams with Python code
* Alternatively business process diagram can be generated by using plain text
* Business process diagrams contains
* Diagram title
* Pool(s)
* Lane(s)
* Elements:
* Event: Start, End, Timer, Intermediate, Message, Signal, Conditional and Link
* Activity: Task, Subprocess
* Gateway: Inclusive, Exclusive, Parallel, Event
* Support for different colour themes
* Default
* GREYWOOF
* BLUEMOUNTAIN
* ORANGEPEEL
* GREENTURTLE
* Save diagram as PNG file

## Change Logs
Refer to this [Change Logs](https://github.com/csgoh/processpiper/wiki/Change-Logs) page for the latest updates.



## Installation
### Install from PyPI
```bash
pip install processpiper
```
<br>

## Frontend Application
Two frontend applications have been developed to showcase ProcessPiper capability.
* [Piperoni](https://github.com/csgoh/Piperoni) - A desktop application
* [Piperita](https://piperita.streamlit.app/) - A Streamlit web application
<br>

### Python version requirements:
* Python 3.10, 3.11

### Library Dependencies
* Pillow 9.5.0

### Supported Platforms
* Windows
* Ubuntu
* MacOS

## Documentation
Please refer to [Processpiper Wiki](https://github.com/csgoh/processpiper/wiki) for more information on how to use this library.

## Examples
### (Method 1) Generate diagram using English like PiperFlow syntax
This is a sample code to generate a business process diagram using PiperFlow syntax.
## Method 1: Generate business process diagram using English like PiperFlow syntax
This is a sample code to generate a business process diagram using [PiperFlow](https://github.com/csgoh/processpiper/wiki/Usage-Documentation#syntax) syntax.
```python
from processpiper.text2diagram import render

Expand Down Expand Up @@ -103,7 +57,7 @@ render(input_syntax, "my_process_map.png")

```

### (Method 2) Generate diagram using Python code
### Method 2: Generate business process diagram using Python code
This is a sample code to generate a business process diagram using Python code. The code is self-explanatory. The diagram is generated using the default colour theme.

```python
Expand Down Expand Up @@ -144,16 +98,45 @@ with ProcessMap(
The generated diagram is as follows:
![Process Map](https://github.com/csgoh/processpiper/blob/main/images/test/test_auto_case1.png)

# Features
* Generate business process diagrams with Python code
* Alternatively business process diagram can be generated by using PiperFlow
* Business process diagrams contains
* Diagram title
* Pool(s)
* Lane(s)
* Elements:
* Event: Start, End, Timer, Intermediate, Message, Signal, Conditional and Link
* Activity: Task, Subprocess
* Gateway: Inclusive, Exclusive, Parallel, Event
* Support for different colour themes
* Default
* GREYWOOF
* BLUEMOUNTAIN
* ORANGEPEEL
* GREENTURTLE
* Save diagram as PNG file


## Frontend Application
Two frontend applications have been developed to showcase ProcessPiper capability.
* [Piperoni](https://github.com/csgoh/Piperoni) - A desktop application
* [Piperita](https://piperita.streamlit.app/) - A Streamlit web application

## Development Status
Initial first release would only cover the following basic business process elements. Other element types will be introduced in subsequence releases.
## Support and Community

* Event: Start, End, Timer, Intermediate, Message, Signal, Conditional, Link
* Activity: Task, Subprocess
* Gateway: Inclusive, Exclusive, Parallel, Event
If you have any problem, I will try my best to resolve it.<br>

* 📄 Find a solution in our [Wiki](https://github.com/csgoh/processpiper/wiki)
* ⚠️ Open an issue right here on [GitHub](https://github.com/csgoh/processpiper/issues)<br>

Any ideas or suggestions, please send it to me via [GitHub Discussions](https://github.com/csgoh/processmapper/discussions).

## How to Contribute

If you'd like to contribute, start by reading our [Contribution Guide](https://github.com/csgoh/processpiper/tree/main/contributions/CONTRIBUTING.md).<br>

Lets build great software together.



0 comments on commit c5d062e

Please sign in to comment.