{"id":23357265,"url":"https://github.com/rwbl/pfdmaker","last_synced_at":"2025-10-24T12:56:10.562Z","repository":{"id":269065030,"uuid":"906315919","full_name":"rwbl/pfdmaker","owner":"rwbl","description":"PFDMaker is a suite of B4J applications to create, view or operate Process Flow Diagrams (PFD).","archived":false,"fork":false,"pushed_at":"2024-12-20T17:06:55.000Z","size":483,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-02-13T21:37:01.726Z","etag":null,"topics":["b4j","b4x","javafx","pfd"],"latest_commit_sha":null,"homepage":"","language":null,"has_issues":false,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"gpl-3.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/rwbl.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2024-12-20T16:15:40.000Z","updated_at":"2024-12-20T17:06:59.000Z","dependencies_parsed_at":null,"dependency_job_id":"7c8be5a5-83d9-4b09-a39e-c636d437e0b5","html_url":"https://github.com/rwbl/pfdmaker","commit_stats":null,"previous_names":["rwbl/pfdmaker"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rwbl%2Fpfdmaker","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rwbl%2Fpfdmaker/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rwbl%2Fpfdmaker/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/rwbl%2Fpfdmaker/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/rwbl","download_url":"https://codeload.github.com/rwbl/pfdmaker/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247721900,"owners_count":20985084,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["b4j","b4x","javafx","pfd"],"created_at":"2024-12-21T10:19:55.718Z","updated_at":"2025-10-24T12:56:05.522Z","avatar_url":"https://github.com/rwbl.png","language":null,"funding_links":[],"categories":[],"sub_categories":[],"readme":" # PFDMaker\n**PFDMaker** is a suite of [B4J](https://www.b4x.com/b4j.html) applications to create, view or operate **P**rocess **F**low **D**iagrams (PFD).\n\nDeveloped as a personal challenge (and for personal use) to create all kind of PFDs.\nThe main focus has been on **Chemical Engineering Diagrams**, but evolving for **Flowcharts** and more like **Electrical** shapes.\n\nThere are 4 applications:\n* **PFDCreator** - create PFDs using objects drag \u0026 dropped on a canvas (completed v1).\n* **PFDViewer** - view PFDs created by the PFDCreator (development in progress).\n* **PFDOperator** - operate or control PFDs created by the PFDCreator (development in progress).\n* **PFDShapeMaker** - create object shapes used by the PFDCreator (development not started).\n\n![1734684964174](https://github.com/user-attachments/assets/6f591361-94a7-4de9-9ae3-b75f1b0f7ee2)\n\n🚧 The **PFDMaker** developments are in progress, but decided to share the source code of the B4J project **PFDCreator**.  \nThe source code of this B4J project can found in the archive pfdcreator.zip and it requires the [B4J](https://www.b4x.com/b4j.html) to run.\nRead next.\n***\n\n## PFDCreator\nAn application to create all kind of simple **P**rocess **F**low **D**iagrams (PFDs) using objects (shapes) which are dragged \u0026 dropped on a Drawing Board (Canvas).\nA PFD contains objects which are shapes with properties.\nThe properties define the object shape position, size, colors, text \u0026 format, but also its value, unit, operate flag and more.\nThere are a number of predefined shapes, the basic shapes but also dedicated shape types to create flowcharts, process instrumentation \u0026 piping diagrams or electrical circuits.\n\nSeveral Screenshots\n#### Main Page\n![1734686420262](https://github.com/user-attachments/assets/28af6257-755b-490c-bbaa-07c834c87037)\n\n#### Shape Types with Shapes\n![1734685315414](https://github.com/user-attachments/assets/a6f9722f-535d-4aee-8752-d0c05fe6b2f8)\n\n#### Resize Object and Show Index\n![1734685142652](https://github.com/user-attachments/assets/ead04045-639b-4305-87b5-499d52cdf2a1)\n\n#### B4XDialog Examples\n![1734685249422](https://github.com/user-attachments/assets/60d4e002-6b1d-45ef-91b9-3fa1cfb8d4c9)\n\n### PFD Shape Types\nThe PFDCreator has initially following shape types:\n* **Basic** - Common shapes which can be used by all PFD types.\n* **Flowchart** - Shapes, like terminator, process, decision used to create flowcharts.\n* **PID** - Shapes for Process Instrumentation \u0026 Piping (PID) diagrams.\n* **Electrical** - Shapes to create electrical circuit diagrams.\n\n**Notes**\n* The PFDCreator application is provided as a B4J project with source code which requires [B4J](https://www.b4x.com/b4j.html) to run (Windows).\n* The PFDCreator has been evolved from the idea to create simple PIDs. The application has become rather complex and has room for improvements.\n* The included predefined shapes, created as methods use different ways to draw on the canvas. This is because evolving how to draw shapes. Considering using B4XPath as method only.\n* To enhance the PFDCreator with more shape types and shapes, lookup the development notes (DEVNOTES.md).\n* This B4J project is provided AS-IS and be aware that developments are ongoing which might lead to concept or code changes.\n\n### Source Code\nThe source code of the B4J Project **PFDCreator** is included.\nCreated with B4J v10.0 (64 bit), Java JDK 19.0.2.\nInternal libraries: jCore, jFX, B4XPages, XUI Views, Json, DesignerUtils, ByteConverter, BCTextEngine.\nAdditional libraries: [AsyncCanvas](https://www.b4x.com/android/forum/threads/asynccanvas-b4xcanvas-wrapper-with-invalidate-for-b4j.148736/), [jReflection](https://www.b4x.com/android/forum/threads/jreflection-library.35448/).\n\n**Installation**\nUnzip pfdcreator.zip to a folder of choice.\nCopy the files from the AdditionalLibraries folder to the B4J Additional libraries folder.\nLoad PFDCreator.b4j in the B4J IDE.\n\n### Documentation\n* DEVNOTES.MD - Comprehensive information about the PFDCreator concept, development and how to enhance.\n* TODO.md - Actions for the next version.\n* IDEAS.md - Ideas to be considered for implemention.\n* CHANGELOG.md - Log of version changes.\n* PFDCreator.hlp - User guide.\n\n### Video\nA [video](https://1drv.ms/v/s!AhNDg9iSqrdPwNU1YZQVEQ1bd0BCnA) demonstrates how to create a very simple flowchart using the PFDCreator.\n\n## PFDViewer (development in progress)\nView PFDs created by the PFDCreator.\n\n## PFDOperator (development in progress)\nOperate or control PFDs created by the PFDCreator.\n\n## PFDShapeMaker (development not started\nCreate object shapes used by the PFDCreator.\n\n## Licence\nGNU General Public License v3.0 - Developed for personal use only. See file LICENSE.\n\n## Credits\nTo [Anywhere Software](https://www.b4x.com) and the [B4X Community](https://www.b4x.com/android/forum/) for sharing libraries, hints\u0026tips.\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frwbl%2Fpfdmaker","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Frwbl%2Fpfdmaker","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Frwbl%2Fpfdmaker/lists"}