Jump to content

wbmnfktr

Members
  • Posts

    2,198
  • Joined

  • Last visited

  • Days Won

    57

wbmnfktr last won the day on February 26

wbmnfktr had the most liked content!

4 Followers

Contact Methods

  • Website URL
    https://powered.by/wbmnfktr/

Profile Information

  • Gender
    Male

Recent Profile Visitors

25,113 profile views

wbmnfktr's Achievements

Hero Member

Hero Member (6/6)

2.8k

Reputation

  1. For those who want to play around with that workflow: https://github.com/webmanufaktur/pwaiworkflow-profile DDEV setup (customise .ddev/config.yaml to your needs) clean ProcessWire installation clean database backup: site/assets/backups/database/clean-start.sql all necessary modules (core, 3rd party) Skills in .agents + custom symlinks for various IDE/tools AGENTS.md ready to go Testing & Demo: Branch: feature-restaurants-directory Specs file: https://github.com/webmanufaktur/pwaiworkflow-profile/blob/feature-restaurants-directory/specs/restaurants-directory.md Ask your agent to run that file and see what happens. Results may vary. Minimax M2.5 was fine, Z.AI GLM-5 did way better. Tell me your results and findings if you like to share. Reference result with Claude Sonnet 4.6 for comparison: https://github.com/webmanufaktur/pwaiworkflow-profile/tree/feature-restaurants-directory-claude-sonnet-46
  2. Not that long ago I started with a completely new approach in regards to ProcessWire an AI. I had some rules, commands, and settings for Windsurf and Cursor months back but nothing really worked as good as I hoped it would and lost interest. Even switched to Astro, NextJS, BHVR, and other JS solutions. 🙈 ProcessWire-based development went back to 80% hand-coded with some assistance on the sidelines, mostly debugging, security, and tasks that were more PHP-focussed than ProcessWire-related. Then AGENTS.md and SKILLS came up. Custom instructions, guardrails, links to docs and example code. Almost similar to a README.md but for AI coding tools. The main problem still was the knowledge gap in models. They just didn't know enough about ProcessWire works and how to do more complex stuff. With SKILLS this changed. I pulled the entire docs, some blog posts, took some of the old recipes and let the AI do its magic. The AI repackaged the entire docs, custom instructions, module docs, PHP best practices, and everything else into skills. I installed new and clean instances of ProcessWire and just asked the AI to build things. Yeah... didn't work as expected. I gave the AI more tools to work with and fixed the AGENTS.md: RockMigrations - for creating and updating templates, fields, and pages 🥰 AutoTemplateStubs - for details about existing templates and fields 🤯 ProcessDatabaseBackups - can be a good idea to give your tools a database file it can look into without the need to bootstrap ProcessWire into a custom script or similar. Inline comments in config.php to mark things as important or noteworthy otherwise that file would be ignored /init - a custom action OpenCode, Claude Code, and some other tools have to initialize the whole project 💯 Now my tools have all the skills and know how to use RockMigrations to create templates, fields, and pages, can trigger database backups and look into the made changes, know how to build a custom module. Even custom page classes or URL hooks aren't a problem anymore. The AGENTS.md contains now critical changes in the config.php, has links to all the skills, and whatever necessary. The /init command is very capable of creating it nowadays. I just started to test it more and more. With fresh installations, older projects and even recent projects that have tons of everything. Whenever problems occure I let the AI update the skills or create new ones that take care of the problems it faced. Learning by mistakes. The overall workflow A README.md with a scope of the project, necessary templates and their fields, overall main features besides handling page rendering, like a bookmarking function for recipes or read articles, newsletter signups, automation tasks to clean up older data, and whatever the project needs. The amount of typing is still the same but now mainly in markdown files that explain what to build (/specs), what to fix (/issues), and what we have done already (/docs). I always start in PLAN mode. Starting simple with the overall idea, goals, and outcome. Then the combination of tool and model is important. OpenCode and Claude Code are great at thinking and planning but they need a capable model like Opus, Kimi K2.5 Thinking or even GLM-5. They start to ask questions, give options, recommend workflows. When that's done i ask to save everything to a file in the /specs folder. From here I can either switch to BUILD mode, manually tweaks the plan file, or let other models (Gemini 3 Pro or Codex) review it and ask for suggestions, changes, fixes. Github: https://github.com/webmanufaktur/pwaiworkflow/ Installation: Download and extract files Move entire .agents folder into the project root next to the wire/ folder Look into create-symlinks.sh, run if necessary --- Plans Windsurf $10/month (Legacy) with access to all Anthropic, OpenAI, Google models, and many more Z.AI Coding Plan Pro $120/year (BlackFriday Deal) with all GLM models, including GLM-5 and future releases Kimi Moderato $19/month with Kimi K2.5 (just expired) Minimax Coding Plan $20/month with M2.5 (started using it as successor to Kimi) Tools OpenCode - https://opencode.ai/ Similar to Claude Code, easy to configure, and even easier to extend with custom modes, agents, skills, and whatever you might need or want. Has a great planning mode and doesn't ask unnecessary questions in the middle of tasks like Claude Code did for a while just to burn more tokens. Kimi Code CLI (with Kimi K2.5) - https://www.kimi.com/code/en Tested it last month and while it's a CLI like OpenCode/Claude Code it feels and works totally different. It doesn't have any modes but supports AGENTS.md and SKILLS. Super fast and it is super capable for quick fixes, smaller features, or heavy automations. Windsurf IDE - https://windsurf.com/editor Like Cursor with almost identical features, a custom terminal integration, includes a browser that has full access and control which is great for debugging, UI/UX (especially with Opus 4x.) - I guess most of you have seen in the past or even tried it. Was called Codium before and I know some of you used that Codium Extension which was awesome.
  3. Send a PR with a fresh README.md that contains what I was looking for.
  4. I tried this and it stated that the directory is not empty - which is true because there is a folder for DDEV (.ddev). Maybe add a note that says something like: "If you are running this in a DDEV environment, contine as the .ddev folder stays untouched." Or something similar. At least this is what happened when I continued. Overall pretty nice experience. All that's missing now is a curl/wget command or a public URL on Github we can just copy and paste and go from there. I like it! Oh... and maybe the script should remove the kickstart.php as well.
  5. I love these clean minimal styles. Have you tried to add some nice monospace font? Could make a nice contrast in some places.
  6. The following question might sound a bit rough at the edges, BUT are people still using FontAwesome? Sure we have it in the ProcessWire backend but I can't remember using it somewhere else in a real project. I'd say YES to re-submit to push ProcessWire but that's by far the only reason I could think of.
  7. I know that a lot of you enjoy some AI assistance while coding, therefore I wanted to point you to this deal: Compared to Claude Sonnet 4.5 I use Z.AI GLM 4.6 for quite some time now in OpenCode and Cline and I am super happy with it. For the price the results are awesome. No fear to ask for another iteration as usage limits are way higher than in Claude Code, Codex, and probably many others. Works in almost all tools availabe, see here: https://docs.z.ai/scenario-example/develop-tools/claude I am not affiliated with them so there is just this plain text link to their subscribe page. Take a look for yourself. ➡️ z.ai/subscribe
      • 1
      • Like
  8. Had the same issue but with ProCache a few days back - using the latest ProCache and ProcessWire DEV versions. Ryan's answer: As screenshot, because it's in the ProCache Support thread not everyone has access to. For me this didn't change anything but please test on your site. I moved ProCache manually to the modules folder instead.
  9. My tailwind.dist.css file only contains what my projects need most of the time - on all pages/views/whatever. 😁 So there is that. However you could split it up in several TailwindCSS files. One for only layouts, one for components (or even each component), one for this, and one for that. It depends on how much time you want to invest and break things up into smaller pieces and then add to whereever you finally load the CSS files. I think it's quite a bit of an overhead, but in case your projects are huge or have multiple areas, such as frontend, backend (not ProcessWire itself, but like a custom member area) this could help. First step would be disabling automatic detection - see here: https://tailwindcss.com/docs/detecting-classes-in-source-files#disabling-automatic-detection Then you would need multiple .css files that have directives to source only some parts of your files. It really depends on how well-structured your files are. Also in the docs, see link above. @import "tailwindcss" source(none); @source "../admin"; @source "../shared";
  10. 💯! I couidn't have said it any better - and said similar things in the past. At least 95% of my clients don't care about what is used to achieve their goals. They need tools that work, are easy to use, have a low barrier to onboard new editors to maintain content or data. Quite a lot of times, yes. I migrated a bunch of Wordpress, Typo3, Joomla projects over to ProcessWire and everyone was happy with the result. The moment you have to deal with lots or tons of data ProcessWire beats everything. This already starts with simple things like events (parties, concerts, those kind of events) and you take care of archiving old events. 🤯 Try this with WordPress. Try to automate things. It's super easy in ProcessWire. Remove daily maintenance tasks from your clients schedule - use this as a selling point - and they will understand. Depending on how big the project/budget was I either [a] showed them the most critical details about ProcessWire, like Security, API, Backend, Templates, Multilanguage, Access Rights/Roles. Everything is in the core, no additional modules/plugins needed. [b] built a MVP of the project, showcased automation, user management, access rights/roles, and let them (or those that would have to do so in the future) add/edit/delete content and data. BUT... When my only part in a project is implementing the design, build out templates, components, blocks - everything frontend - I don't care what they use later on as CMS. [Side note] Don't get me wrong about the overall topic. I think the new design/website could profit from some tweaks and iterations. I'd love to see more content and examples towards developers. Not only the basic API things, but how easy it is to work with it. Even when you are totally new to it.
  11. Some minor tweaks in the PHP & JS and this is working as expected. <?php foreach ($page->images as $image) { $thumb = $image->height(180); echo "<button class='trigger' popovertarget='mypopover' popovertargetaction='show' data-full='{$image->url}'> <img src='{$thumb->url}' alt='{$image->description}' /> </button>"; } ?> <div id='mypopover' popover> <img src='' alt='' /> <button class='close_pop' popovertarget='mypopover' popovertargetaction='hide'>&times;</button> </div> <script> window.addEventListener("load", initGallery); function initGallery() { const triggers = document.querySelectorAll(".trigger"); let popImg = document.querySelector("#mypopover img"); triggers.forEach((trigger) => { trigger.addEventListener("click", () => { let popImgUrl = trigger.dataset.full; popImg.src = popImgUrl; let triggerImg = trigger.querySelector("img"); popImg.alt = triggerImg ? triggerImg.alt : ""; }); }); } </script>
  12. Ask for browser name, version, and all extensions installed. Even ask if the person is using a VPN or is sitting behind a PiHole or Adguard instance. One coincidence... the user is using an Apple and the page path contains `Apple(s)`. Another thing, the path has a weird prefix in the breadcrumb: `\Apples` Might be nothing, but these are my first thoughts.
  13. @cpx3can you provide me a list of all modules you use and and outline of the template in which that occures, maybe even an export of the template and fields, with the exact versions of ProcessWire and the modules you use. So I can create a similar environment and play around with it? Would reduce the guessing here.
  14. AI, Cursor, Windsurf, Claude Code... you name it. In terms of ProcessWire they all need a strong hand that guides them through different tasks, ways, and whatever its in the way. You need to oultine your part in ProcessWire in great detail. You need to define hooks, the solutions to use - from ZIP to TempDir. You have to outline the forms it needs to render and the fields to use from start to finish. You could give an existing module as baseline, but beware it knows what to do then. But extending existing modules works pretty good - see my fork here of GUID/UUID Generator Whatever tool you use, it knows the baseline I knew 2 weeks into ProcessWire back in 2014 after doing the tutorials and reading the forums. Hint: Let Composer/Cascade finish the tutorials - it's wild! And let them create rules, workflows and memories from it. You will reach a junior-junior grade PW-dev this way. BUT (big time)... it's great and even superior in terms of PHP. Do the outline, from start to finish, do what you know in terms of ProcessWire. Let the AI/IDE/Agents do the PHP part, including docs, and you will be happy. Sure... not that much fun as people have that use NextJS (13, and maybe 14, but not 15) or AstroJS (2,3, and parts of 4, but not 5)... but hey... that's still only JavaScript (maybe Typescript) those AI/IDE/Agents are good at - the concepts still need either docs or a solid foundation. In the JS-world everything is a pattern, everything is JS or TS, the concepts are the same. But framework-specific... is another story. Laravel works great. Ok, maybe not the latest version, and maybe not all the extensions, like Forge and Filament. But yeah, it works. Even migrations. Depending on the database. And don't try Supabase or Neon. That's super wild. But... older versions with just *.blade.php - works! Flux, InertiaJS, VUE, React? meh I am still not a coder/developer/programmer BUT... I know how to write a technical concepts and know how to outline modules, hooks, whatever in ProcessWire. The moment I realised that those tools are great at PHP, and s*ck at ProcessWire - I understood what to do. A new project I work on, a NextJS/AstroJS/ProcessWire-combo, has already 50+ documents to outline which tool does what and how to do it. And I didn't even really start to outline anything in terms of modules or hooks. The ProcessWire part, or at least a big part, is already outlined here: https://github.com/webmanufaktur/pwai/tree/windsurf Which is the latest commit with most of the stuff needed - for my projects. But yes... those AI/IDE/Agents only see patterns and try to match up - in frameworks. To give a bit more helpful details here: AutoTemplateStubs is a great addition to help your tools to understand what's happening. In case you hate to do everything yourself: RockMigrations has some nice .vscode snippets that help and most AI/IDE/Agents understand it and can create templates and fields right from migrate.php. Noice!
×
×
  • Create New...