ProcessWire Weekly #622

The 622nd issue of ProcessWire Weekly brings in all the latest news from the ProcessWire community. Modules, sites, and more. Read on!

Welcome to the latest issue of ProcessWire Weekly! In this week's issue we're going to check what's new in the dev branch of ProcessWire at GitHub, covering a couple of weeks worth of commits — fixes, new features, and more.

In other news this week we're going to introduce a brand-new third-party ProcessWire module from Iskender TOTOĞLU: HTMX module for ProcessWire. And, as always, we've also got a new site of the week to highlight; this week that site is called Oskey, and it is a learning and medical preparation resource for medical students.

Thanks to all of our readers for being here with us again, and as always, any feedback is most welcome – please don't hesitate to drop us a line if there's anything in your mind you'd like to share with us. Enjoy our latest issue and have a great weekend!

Latest core updates

It's been a couple of weeks since we last took a closer look at the updates in the core, and there have been quite a few of them in the meantime — a total of 35 commits, which include both bug fixes and some new feature additions. Out of those 35 commits 24 have been co-authored by Claude (AI), so it is pretty safe to say that it is definitely having an effect on our throughput.

Here are some highlights from the past couple of weeks:

  • Session fingerprinting now supports partial IP address: for IPv4 first three octets are used, while for IPv6 it is first six groups. This is a less error prone middle ground between full IP address based fingerprinting and no IP address fingerprinting at all.
  • Session::getIP() method now accepts new $numParts param, which can be used to return a set number of octets/groups from the IP address, and automatically normalizes IPv6 addresses to their fully expanded lowercase form.
  • New $config->sessionCacheLimiter setting has been added for modifying session_cache_limiter() behavior on a per-context basis, where context can be 'guest', 'loggedin', or 'admin'.
  • API.md files have been added for various core fieldtypes, along with corresponding [Type]Field stub classes with PHPDoc annotations. Fieldtypes have also received some other minor improvements, including all of them now living in their own subdirectories in the codebase.
  • PagesVersions module now supports providing a human-readable name for a specific version, e.g. "draft" or "backup".

Additionally there have been miscellaneous fixes for the Konkat admin theme style, PHP 8.5 compatibility, PageFrontEdit, MarkupFileRegions, FileLog (added exclusive file log during prune and find operations), FieldtypeDecimal (preload was returning trailing zeros for integer values), Sanitizer (fixed handling of URLs with userinfo and encoded "@"), WireDatabasePDO, custom page classes, and more.

That's all for our core updates section this week. We'll be back with more updates next week, but keep on reading for other weekly news and updates!

New module: HTMX

HTMX module for ProcessWire is a new third-party module from Iskender TOTOGLU. It is an ambitious project that aims to provide easy-to-create, stateful, reactive components (and reusable UI elements) for ProcessWire with out-of-band swaps, SSE support, etc.

By unifying State-Aware Components, HMAC-SHA256 Payload Security, and ProcessWire's native architecture, this module provides the ultimate Developer Experience (DX) inspired by frameworks like Livewire—exclusively for ProcessWire.

— Iskender TOTOGLU

While this may sound a bit complicated, it's all explained in the module's README, or the modules directory entry for the module. All in all creating components is actually quite simple, and the module handles a lot of the heavy lifting for you. There is also a handy quick start guide covering the process of building a "like button" component, complete with backend, front-end, persistent state, etc.

Definitely go check out the video demo at the support forum if you'd like to see this module in action.

For those looking for a streamlined developer experience, the module has handy CLI scaffolding commands that can be used to build a stub for a stateful component or a stateless UI element. And, since AI is just about everywhere nowawayd, it also has an AGENTS.md file that helps AI assistants get up to speed.

If you'd like to give this module a try, the author of the module recommends installing it via Composer, but you can also install it via the built-in modules manager in the admin, or clone or download the source from the trk/Htmx GitHub repository. If you need help with the module, head down to the HTMX for ProcessWire support forum thread.

Big thanks to Iskender for creating this very interesting new module and sharing it with the ProcessWire community!

Site of the week: Oskey

Our latest site of the week is called Oskey, and it is a UK based learning and exam preparation resource especially geared towards medical students.

Oskey is a paid platform with OSCE Learning Lists (modules) and General Medical Guide (approaches). There are a total of six different modules, a comprehensive guide, and various utilities for learners. As the site explains, it is not intended as a replacement for other types of learning material or academic studies, but rather intended as an additional tool to help students in the medical field pass their OSCE or clinical skills exams.

The public part of Oskey is, simply put, a straightforward and uncomplicated product website. The design is clean and minimalistic, with some nice vector graphics to liven things up. There are also good introductions to the platform itself, and some sneak-peeks into paid features, along with necessary legal contents and disclaimers etc.

As for some behind the scenes details, the front-end of the public Oskey website appears to be largely custom-built when it comes to CSS, with some additional third-party helpers, like the brilliant Hamburgers package. On the JavaScript side the site utilizes Vue.js, and when it comes to non-core ProcessWire modules, the only one we could spot in action was the commercial form management utility FormBuilder.

Our congratulations to Oskey for their ProcessWire powered website, and of course to the team behind this project at Castus for a job well done!

Stay tuned for our next issue

That's it for the 622nd issue of ProcessWire Weekly. We'll be back with more news, updates, and content Saturday, 18th of April. As always, ProcessWire newsletter subscribers will get our updates a few days later.

Thanks for staying with us, once again. Hope you've had a great and productive week, and don't forget to check out the ProcessWire forums for more interesting topics. Until next week, happy hacking with ProcessWire!

Post a comment