Norbert Orzechowicz
banner
norbert-tech.bsky.social
Norbert Orzechowicz
@norbert-tech.bsky.social
Problem solver, software architect, also working as a Data Witcher ⚔️, hunting and killing 🧌 and 🪳in data processing pipelines! Creator of https://flow-php.com
totally, that's the whole purpose, it can move data between source/destination applying transformations on the fly!

Feel free to join our discord in case you have more questions
December 25, 2025 at 9:14 AM
#7 I highly encourage you take a look at our docs and share your feedback! flow-php.com/documentati...
Documentation - Flow PHP - Data Processing Framework
Documentation
flow-php.com
December 16, 2025 at 5:13 PM
#6 And this is only a beginning! What's comming next is going to make extracting data from postgresql a piece of cake.

We are working on dedicated Flow PostgreSQL extract that would let you process PostgreSQL data based on any custom query string!
December 16, 2025 at 5:13 PM
#5 flow-php/postgresql is using flow-php/types to convert data between PHP and PostgreSql that you can easily extend in order to provide your own custom converters!
December 16, 2025 at 5:13 PM
#4 Last but not least, PostgreSql Client interface! with built in support for Row Mappers 🤯 It comes with a simple Constructor Mapper available out of the box but we are already working on providing bridges for:

- cuyz/valinor
- crell/serde
December 16, 2025 at 5:13 PM
#3 On top of AST Nodes from parser we have probably the most advanced PHP Query builder ⚙️

Thanks to experience of other amazing projects like JOOQ, Dapper or sqlx we crafter very elegant fluent interfaces helping you create any query you can imagine!

flow-php.com/documentati...
Documentation - Flow PHP - Data Processing Framework
Documentation
flow-php.com
December 16, 2025 at 5:13 PM
#2 Parser

Thanks to awesome github.com/pganalyze/l... our parser can break any valid postgresql query string into AST.
It works with a single or multiple queries statements.

Super helpful for adjusting programmatically any query (for example for pagination or validation)
GitHub - pganalyze/libpg_query: C library for accessing the PostgreSQL parser outside of the server environment
C library for accessing the PostgreSQL parser outside of the server environment - pganalyze/libpg_query
github.com
December 16, 2025 at 5:13 PM
As you can imagine, creating query builders for whole SQL (not only INSERT/DELETE/UPDATE/SELECT) is a maaaaaasive task.

That's why new Flow will come a bit later, maybe as a 🎄🎁 from 🎅
December 8, 2025 at 6:10 PM
flow-php/postgresql library is an evolution of flow-php/pg-query that started as a simple parsers and already evolved into whole postgresql library that comes with query builders for pretty much anything available in postgresql syntax until version 17 🤯
December 8, 2025 at 6:10 PM
For now, Flow-PHP/Pg-Query allows mostly to understand the SQL query by parsing it or creating a fingerprint from it (yes, we can compare SQL queries). I have big plans for it like:

- Static Analysis
- Reformatting queries
- Modifying queries on the fly
- Query builder
November 27, 2025 at 2:01 PM
flow-php/pg-query is still under heavy development, but the first results are very promising.
flow-php/pg-query-ext can be easily installed through PHP Pie, a new extensions installer tool 🥮
November 27, 2025 at 2:01 PM
Flow PHP PG Query is based on github.com/pganalyze/l... which pretty much takes parser directly from PostgreSQL Server.
I wrapped it in simple PHP Extension flow-php.com/documentati... and used as a dependency for flow-php/pg-query library
Documentation - Flow PHP - Data Processing Framework
Documentation
flow-php.com
November 27, 2025 at 2:01 PM