All Activity
- Today
-
Peter Knight started following Collections — Airtable-style data management for ProcessWire
-
Collections — Airtable-style data management for ProcessWire
Peter Knight replied to maximus's topic in Modules/Plugins
Brilliant implementation as usual. Ditto - I find when creating modules that tables are almost always the most important working view and the data model I have to fight and customise the most. I’d love to see this incorporated into the core and more modules too. -
A quick note about the new documentation: the table layouts in the accordion sections don't work on mobile devices. They aren't scrollable. 😊
-
The module may not have received any updates in the last five years, but it works reliably. I use it as a must-have for updates. Thanks for sharing the link - I hadn't heard of it before.
-
@maximus - it hasn't been maintained in quite some time (and probably does need some work on some features), but https://github.com/adrianbj/ProcessModuleToolkit provides a way to upgrade all with one button click. Not suggesting your idea wouldn't be nice as well though.
-
I’m using the core FieldtypeComments in ProcessWire and everything works correctly on the frontend and in the database. Comments are saved properly and displayed without issues. However, in the admin I get a one-time SQL error after a new comment is submitted: SQLSTATE[HY000]: General error: 1525 Incorrect TIMESTAMP value: '1777649215' Observations: Difference between “error value” and stored value is consistently +3600 seconds No data corruption or functional issues occur Environment: PHP timezone and $config->timezone both set to Europe/Brussels The warning only appears once per comment submission and does not affect saving or rendering. Has anyone seen this behavior before with FieldtypeComments?
-
Hi everyone, I've been running this module in production a spirits catalog with 12,000+ products — for several months. Today I'm releasing it publicly. GitHub: https://github.com/mxmsmnv/Collections The problem ProcessWire's page tree is brilliant for site structure. It's painful for data management. When you have thousands of pages as records — products, listings, vacancies, menu items — you hit the same walls on every project: no table view, no inline filters, no bulk actions, no export, no REST API, no role scoping per dataset. Every PW developer has solved some version of this. Collections solves it once. Screenshots What it does Gives any ProcessWire template a configurable admin table — live search, dropdown filters, inline status toggles, bulk actions, CSV/JSON export, and a REST API — all configured through a UI, without writing code. Admin UI: Configurable columns per collection with custom labels Live search with 300ms debounce across multiple fields including Page references Dropdown filters for FieldtypePage and FieldtypeOptions fields Inline publish/unpublish toggle via AJAX Bulk actions: publish, unpublish, delete with CSRF protection CSV and JSON export with active filters preserved Role-based permissions matrix — scope each role per collection "View in Collection" button injected into the page edit form REST API: Bearer token, query param, HTTP Basic, and PW session auth API key management with expiration dates and per-key capability scopes SHA-256 hashed keys, usage tracking, rate limiting (100 req/min) WireCache support for GET responses ProFields support: Table, Textareas, Multiplier, Repeater Matrix, Combo — including dot-notation for subfields (address.city, blocks.hero.title, prices.*.amount) Field types: Text, Textarea, Integer, Float, Checkbox, URL, Email, Date, Image, File, FieldtypeFileB2, FieldtypePage, FieldtypeOptions, MapMarker, Color Requirements: ProcessWire 3.0.244+, PHP 8.2+ There's a thread from 2013 asking for exactly this: Module Idea: Flat Listings — here it is, 12 years later. Known issues are tracked on GitHub — the module is stable for production use, active development continues.
- 1 reply
-
- 6
-
-
Start - Personal quick-access dashboard with visual link editor
maximus replied to maximus's topic in Modules/Plugins
Yes, I know it well — great Dashboard module! I've used it on almost every project to keep the admin from feeling bare. But as projects grew, I kept hitting the same wall: customizing Dashboard meant writing PHP for each install, and the widget lists got unwieldy. Start (and its companion module Collections) came out of that frustration — the goal was a fully visual, no-code editor where you just drag, drop, and pick icons without touching any config files. -
Six months ago when Ryan was posting once a week, I thought the project was slowing down. Really glad to see the pace pick up! ProcessWire's architecture was always ahead of its time — there's legacy code built up in layers, sure, but the direction now is exciting and hard to keep up with 😄
-
-
erikvanberkum started following PW 3.0.260 – Core updates
-
Super happy with the energy revival of Processwire and the speed at which everything is moving. I feel like moving from a hobbyist to a PRO! This week did my first Claude Design, which I then passed onto Claude Code, with an amazingly simple and smooth workflow. For people into Claude who haven't tried this workflow, please check it out.
-
You won't believe how these changes make my day(s) now! Moving away from ProcessWire to NextJS/AstroJS/HonoJs/WhateverJS just to be able to prove a concept and go live within a super short time using AI/LLMs/Agents was hard but I got things done. I was able to test things, to experiment, to explore, to fail, to succeed. Well... now ProcessWire is back. Back in my preferred stack of tools. Back on #1. I've already moved 2 big projects back from HonoJS and NextJS to ProcessWire. The RSS Monitoring Tool and another one. Cloudflare Workers and Vercel were great hosts with pretty awesome free tiers, yet... at some point I scratched limits big time. Now everything is hosted on H*stinger for a few dollars a month with full CI/CD pipeline, no limits on reads/writes to the database, just a 5GB size limit per database and some other weird limits those projects will never reach. It's unbelievable how fast things turned around and back to a language (PHP) I actually can read and understand and a framework I kind of know how to work with.
-
@wbmnfktr Thanks! This is great to hear, this kind of feedback makes my day. 🙂
- Yesterday
-
wbmnfktr started following PW 3.0.260 – Core updates and WIP: SEO NEO
-
Can you define this a bit more detailed? I mean we have a lot of new AEO, GEO, LLMO, AIO, VEO, NEO, AISO acronyms out there. The name would suggest that NEO (Neural Engine Optimization) would be the focus... is this the case?
-
This will retire my whole set of ProcessWire skills... and I love it! I really enjoy the pace and direction you, @ryan, and ProcessWire are going now. Let alone AgentTools in a fresh installation of ProcessWire does some magic with LLMs (from super cheap Mistral, Deepseek, to great models like Kimi 2.6, MiniMax 2.6, and to Opus 4.6/7 and Codex 5.4/5) which was NOT possible in that way 6 weeks ago. 🥰
-
ryan started following PW 3.0.260 – Core updates
-
This week I've been doing a major overhaul of the /wire/core/ directory structure aimed at improving and adding documentation. Now all core classes that will receive their own API.md documentation also have their own directory. The /wire/core/ directory kind of resembles the /wire/modules/ structure now. In addition, new API.md files have been created for the Pages, Page, PageArray, Modules and Module, all of which also improve the online API reference documentation too, which is what those links are linking to. We'll continue adding more API.md documents every week. Every time a new API.md file is completed, it gets sent over to the WireTests module to verify that everything documented in the API.md works exactly as stated. So new tests have been committed to that module as well, and more will be getting added every week. In addition, ProcessWire now has a CLI (command line interface) installer. Installing ProcessWire is as simple as typing this from the command line: php install.php When you do that, it'll present you with the installation options (see below). For human users, the "Standard usage" option is likely to be best, while AI agents will likely prefer the "Alternate usage" option: Standard usage: php install.php --generate Generate ./install-config.php for you to edit php install.php --config install-config.php Install from settings in ./install-config.php Alternate usage: echo '{"dbName":"mydb",...}' | php install.php Install from settings in JSON string php install.php --json '{"dbName":"mydb",...}' Install using an inline JSON string Other: php install.php --help Display all options That last option "--help" displays a giant screen of options, so I won't repeat it here, but take a look if you are interested. New versions of FieldtypeTable, FieldtypeCustom, FieldtypeCombo and FieldtypeRepeaterMatrix next week. Lots more in progress here too so stay tuned! Thanks for reading and have a great weekend!
- 6 replies
-
- 13
-
-
-
rushy started following 301 redirect to site problem
-
Hi. I have set up a 301 redirect in the host webspace to redirect to a pw site on to my other host server. I simply have these 2 lines in .htaccess and nothing else. (There is no pw on this webspace) RewriteEngine On RewriteRule (.*) https://my-otherdomain.com/mysub [R=301,L] On this other server I have pw installed in a folder www/mysub This works in so far the home page is shown as expected but internal links give internal server error. I suspect because url slugs are referencing the wrong server. Do I need to add rules for this and any idea what rules to add ? Thanks for any help-
-
Mm picture tags could work but then that means creating portrait-oriented edits for every corresponding desktop slide image - and that's not always possible depending on what design will be shown, especially when I begin uploading the rest of my projects. If I'm querying mob vs desktop based on tagged images won't that impact caching regardless? Maybe I misunderstood. In the end I may end up doing extra edits but it's a bit of a pain. Maybe excluding the slideshow from Procache might be another idea...if possible
- 12 replies
-
- beginner portfolio
- masonry
-
(and 3 more)
Tagged with:
-
Peter Knight started following Demo site
-
Hi Is anyone aware of a demo site for testing stuff? Ideally, containing hundreds of pages, pagination, multi-lingual setup, etc? I can set something up with PromptWire in an hour or two, but I was wondering if something like the Skyscrapers site exists? Cheers P
-
Thanks @psy I must admit, I haven't really used urlSegments myself, but I'll certainly add it to the list. Hoping to spin up a test site soon, exclusively for testing this type of thing. I just have to decide what I want to scrape for content. Breweries of the world or skyscrapers etc. Just like the PW demo site.
-
szabesz started following Running LLMs Locally
-
You need an M5 Mac with 128GB RAM, I think (see: https://www.youtube.com/watch?v=SmuX-Al7DUs&t=173s) I have a M4 Pro Mac Mini with 24GB RAM. I cannot run anything more demanding than Qwen3-VL-8B, as the model must be kept in memory (you don’t want to wait for a model to load, I load it before starting to work on something and unload it at shutdown). I do not use Qwen3-VL-8B for coding, instead I use GLM, Gemini subsriptions (and recently, for that given project only, the client pays for Claude subscription so that I can use it). I also like the image descriptions Qwen3-VL-8B generates. IMHO, strangely, it is better than any other LLM I’ve ever tried in this use case. My only issue with Qwen3-VL-8B was that in chat mode it spits out emojis by default all the time, which I hate, but the “NEVER use emojis!” system prompt in LM Studio solved that.
-
They’re exactly the images that will break your heart 😬 So what you need is to tag your images in ProcessWire as wide or mobile (or whatever suits you), then use a <picture> element to let the browser pick the right one based on screen size or orientation. No server-side logic needed, so ProCache stays happy.
- 12 replies
-
- beginner portfolio
- masonry
-
(and 3 more)
Tagged with:
- Last week
-
Thanks @Peter Knight 🙂 I learned a lot with this project. I definitely need to learn GIT for the next proj I do though, regressions keep popping up all over the place 😅. Some bits and pieces left to fix before I upload more projs. Well, I would like a separate selection of images for the slider for mobile users and at fullscreen. I had some QR codes printed on business cards so it would be nice to make the mobile image viewing experience nicer to people I meet out and about. I could probably do something with picture tags but it's not about cropping the same image at different ratios as much as having a separate group of images entirely for mobile, which I can update using tags. Just don't know how caching would work for the same page id. For desktop I like the 16:9 format because it works well for Behance, portfolio presentation books and web (desktop). Mobile not so much. This is what I want to avoid.
- 12 replies
-
- beginner portfolio
- masonry
-
(and 3 more)
Tagged with:
-
Very impressive work and nice PW integration too. Im guessing the images have text embedded in them and that’s why you want mobile portrait versions? TBH I normally find centering + object-fit: cover handles a lot of situations gracefully. I saw some nice work recently by @Stefanowitsch where he had specific mobile crops for hero images. He might be a good person to ask.
- 12 replies
-
- 1
-
-
- beginner portfolio
- masonry
-
(and 3 more)
Tagged with:
-
Ditto. One thing missing in SEOMaestro is support for urlSegments. Fix is via a hook. Be great if SEO NEO supported urlSegments natively. Looking forward to seeing the new module 🙂
-
I'm back from the future lol. I studied some php in the mean time and I understand what use and & do now haha. https://www.johnfarrell.fr Eventually got round to implementing things. There are still a few things to fix overall. Your suggestions work well, I used slideshow image tags and it pulls in images into my home page slider from a WireArray based on that. Only thing is, it would be nice if I could change the images for mobile portrait layouts, based on the user-agent. Some of my designs don't really suit portrait viewing. I thought about using MobileDetect, and make the slider pull images with another tag, say slidermobile. It looks like that doesn't play nicely with ProCache though... I don't want to change the url for mobile either...as I've printed qr codes for the site already 😅 Any suggestions? A PHP solution would be nice but maybe JS is needed. I may make a seperate post in case others find this useful. The last topics on this are old:
- 12 replies
-
- 2
-
-
- beginner portfolio
- masonry
-
(and 3 more)
Tagged with: