My name is Norbert,
I'm a software architect with a focus on designing and building highly scalable web applications and data processing systems.
In my spare time, I maintain several open-source projects and enjoy automating and optimizing everything around me.
Projects
Some are just small libraries, others are pet projects developed during research phase before building commercial project.
# Flow PHP - ETL Open Source
PHP Library License: MIT
Flow is a PHP based, strongly typed ETL (Extract Transform Load) data processing library.
Adapters
- CSV
- JSON
- Elasticsearch
- Database (Doctrine Dbal)
- HTTP
- XML
- PSR Logger
- Memory
Additionally Flow ETL comes with 30+ build in Transformers that can handle most of transformations.
Read more about https://flow-php.com
# Aeon PHP Open Source
PHP Library License: MIT
Aeon is a set of libraries that makes it easier to work with PHP Date & Time in an elegant Object Oriented way.
Adapters
- Full immutability
- Elegant object oriented interface
- Mocking time in tests
- Regional holidays detection
- Business hours abstraction
- Doctrine DBAL integration
- Compatibility with all modern frameworks
- Intuitive API and IDE autocompletion
- Optional leap seconds support
- High precision of elapsed time measurement
- Smooth integration with built in \DateTimeInterface
- Many many more!
Visit project documentation page to learn more and don't be worry about time anymore!
# MD Link Linter Open Source
PHP CLI Tool License: MIT
CLI app that iterates through all markdown files in given path checking if links used in them are always valid. I become obsessed about improving developer experience in projects I'm working on. Most of my projects is documented in markdown syntax since it's easy, can be easily converted to HTML but event without that it's still human readable. Keeping url's up to date was always my biggest nightmare, that's how MD Link Linter was created.
In order to make it even more flexible I created docker image that can be used just like in example below:
docker pull norberttech/md-link-linter
docker run -t --rm -v $PWD:/app norberttech/md-link-linter --exclude=vendor --exclude=node_modules .
Those 2 simple CLI commands can be executed at any operating system with Docker installed. First one will download the image, second will execute it in the current folder, passing additional arguments to exclude `vendor` and `node_modules` folders from inspections.
# Structurizr PHP Open Source
PHP Library License: MIT
If you are familiar with C4 model by Simon Brown then you already know what this library is for. In other case you should watch this talk:
# PHPMatcher Open Source
PHP Library License: MIT
PHP library that only job is to match values against patterns, extremely useful when you need
to check if API response matches expected pattern for example in functional tests.
It also provides many useful placeholders like for example @string@
or @number@
that makes it even more powerful.
Still not convinced?
You can test it before using at https://php-matcher.norbert.tech!
Sandbox source code is available at coduo/php-matcher-site
# AssertJS Open Source
JavaScript Library License: MIT
This is nothing more than another JavaScript Assertion Library, but it comes without any dependencies.
It's strongly inspired by assertion libraries available in PHP. It was initially developed as a part of
No Game - JS 2D Multiplayer Game Engine and
extracted to standalone repository later.
Using assertion makes development much more offensive, with minimum tolerance for mistakes but maximum verbosity
of errors.
Read more at https://assert-js.norbert.tech/
Tiliqua is a large terrestrial lizard measuring up to 40 centimetres long and 700 grams in mass.