Generated by All in One SEO v4.9.10, this is an llms.txt file, used by LLMs to index the site. # Andrei Lupu Just another ... ## Sitemaps - [XML Sitemap](https://a.lup.dev/sitemap.xml): Contains all public & indexable URLs for this website. ## Posts - [Blog](https://a.lup.dev/blog/) - [I Built a WordPress Osaurus AI Provider, and It's Live](https://a.lup.dev/wordpress/i-built-a-wordpress-osaurus-ai-provider-and-its-live/) - Run WordPress AI features on a local model with my new WordPress Osaurus AI Provider plugin. Your provider keys stay safe, so a hacked site can't leak them. - [What Are We Estimating, Exactly?](https://a.lup.dev/social/what-are-we-estimating-exactly/) - I've been writing software for fourteen years. For most of that time, the question "how long will this take?" had a reasonable answer. It might be wrong, but at least it pointed at something real: the time it took me to think it through, type it out, find the bugs, ship it. The estimate was - [My 2026 Tools Stack](https://a.lup.dev/wordpress/my-2026-tools-stack/) - It's 2026 and I made myself a promise that I will blog more about technical web things. Nothing new because I do this every year, but this year I will also make a YouTube video for each article. This is the first "artico-video" in the series. Yes, I just invented that word. If you've been - [Claude: You are absolutely right!](https://a.lup.dev/ai/claude-you-are-absolutely-right/) - As a developer who uses Claude to generate code, fix bugs, and come up with research ideas, I’ve noticed something quite amusing. Claude has a habit of saying “You are absolutely right” quite frequently. It’s become a bit of a meme on the internet, and there’s even a website dedicated to counting how many times - [I'm Exhausted by the AI Culture War](https://a.lup.dev/social/im-exhausted-by-the-ai-culture-war/) - There's a war happening in tech right now. On one side you have people who love vibe coding. On the other side, people who hate AI from the bottom of their hearts. And somehow I'm standing right in the middle, getting yelled at from both directions. - [The unnecessary “Pluginophobia” in WordPress](https://a.lup.dev/wordpress/the-unnecessary-pluginophobia-in-wordpress/) - Once a year, a redundant topic reappears on Twitter within the WordPress Community, which sparks a weird fear of using too many plugins as add-ons. You will hear people trying to joke about the number of plugins some websites have. Or they will post memes about site makers who look into performance improvements after they’ve finished with their website structure. - [Is AI is making you dumb?](https://a.lup.dev/ai/is-ai-is-making-you-dumb/) - AI isn't making you dumb—you're just using it wrong. Exploring the real relationship between AI tools and intelligence in software development. - [Don't forget to flush your ... rewrite rules](https://a.lup.dev/wordpress/dont-forget-to-flush-your-rewrite-rules/) - Before we get into this subject you should know that this is gona be a tehnical article about pretty permalinks and their cache options in wordpress. You know what is wordpress right ? the cms, blog platform, website ? no ? nothing familiar ? if the answer is still “no” you are certainly in the wrong place. The “Why?”! As a wordpress developer I usually don’t give too much attention to the pretty permalinks, I just trust wordpress to do his job and build me some “pretty permalinks” as the option itself tells. This actually works well if you don’t have any crazy ideea about your own url rules or if you don’t follow some weird structure which you have in mind since your first grade. - [PixelGrade ToolBox](https://a.lup.dev/pixelgrade/pixelgrade-workflow/) - This is a summary about the software and scripts used by PixelGrade team, to develop our WordPress themes and plugins. In case this is the first time you try to create a "pix theme" or you just did a full format on your PC, this is what you should start to install. Editors and IDE's At - [Make everything translatable, I mean everything!!](https://a.lup.dev/funny-stuff/make-everything-translatable/) - Sooooo I was searching something through our code and I spotted this: ok, let me clear this for you, especially on the line number. 6: Funny, I never knew that an empty string could be different in other languages .^_^. Here is another one: again, here is the translation I mean, dude, I must really display - [Check the Wordpress version with a Chrome Extension](https://a.lup.dev/wordpress/wordpress-version-chrome-extension/) - When you work with WordPress, you get to see and examine tones of WordPress themes. The Problem Me, for example, I'm working at PixelGrade and we provide free support to our customers who bought our themes. When you do this kind of support for your clients you might notice that a lot of their issues - [Error: options page not found!](https://a.lup.dev/wordpress/error-options-page-not-found/) - I would like to talk about a little experience I had working with WordPress's Settings API, section which I use a lot since I'm a backend developer. Here's the thing, we create WordPress themes and we provide a "Theme Options" page for our clients where they can manage some theme features. This page is created - [Run Gulp Tasks from PhpStorm](https://a.lup.dev/gulp/run-gulp-tasks-from-phpstorm/) - I would like to show you how I deal with gulp tasks in phpStorm where I use the "Gulp Task Runner" to execute gulp tasks. This task runner is integrated into phpStorm as a debug utility. This means it can be found in the upper right corner of the screen where there is a "Play" - [Custom Body Class plugin for WordPress](https://a.lup.dev/wordpress/custom-body-class-plugin-for-wordpress/) - WordPress custom body class plugin - What is this?!? Yesterday I've created a WordPress plugin which allows you to add a custom CSS class on the HTML body tag. Obviously this works only if your theme follows standards and uses the body_class() function. Here is the basic workflow: 1) First you add your custom class in the right - [Patch my site to 94/100 score on page insights](https://a.lup.dev/wordpress/patch-my-site-to-94100-score-on-page-insights/) - When you build a website, you want it to reach as many people as possible. The quality of your content will naturally engage more visitors and a good presence on the social media channels will help you spread the word. But most of your users will reach you through search engines — that's why it's - [Losing my Phone—the best thing before WordCamp Europe 2016](https://a.lup.dev/social/losing-my-iphone-the-best-thing-before-wordcamp-europe-2016/) - I have attended to WordCamp Europe 2016 with the entire PixelGrade crew. In my scenario, I must confess I lived an amazing experience. My mind is full of a bunch of things I've learned, things I figured out I was doing wrong or things where I may be pretty good at. The unforgettable experience at - [Envato Comments Notifications – Chrome extension](https://a.lup.dev/chrome/envato-comments-notifications-chrome-extension/) - While Envato doesn't provide a reliable way to be informed when your item gets a comment, we took action and create a Chrome extension to help us with Envato comments notifications. Give it to me Short story: The name is Envato Comments Notificator it is listed in the Chrome Extension Store. Grab it configure it, - [Automated Testing, what can they bring](https://a.lup.dev/wordpress/automated-testing-what-can-they-bring/) - Please let me set your expectations from scratch. I really want to highlight the fact that I’m NOT an Automated Testing Guru, neither a testing-driven developer. I wrote a few tests in my “coding” life, and half of them I’ve already deleted because I’m way too embarrassed to showcase them. However, I see the added - [Add theme suggestions for plugins for real](https://a.lup.dev/wordpress/add-theme-plugins-suggestions-for-real/) - This article is about my thoughts on different scenarios regarding the moment when a WordPress theme adds plugin suggestions in a clear and useful way. I think the whole WordPress community raises a strong need for a visible and clear relationship between plugins and themes. I came across situations when a theme adds a style for a certain plugin, but - [1Click update language pot files with phpStorm](https://a.lup.dev/phpstorm/1click-update-wordpress-language-pot-files-phpstorm/) - Let me provide you a short context about this article's purpose. In few words, what I'd like to do is to walk-you-through the process of updating language post files in faster and automated way. But hey! not fully automated, ok? You will need to click some buttons, but that's a piece of cake. For Sublime fans – - [The art of assumption making](https://a.lup.dev/team-work/the-art-of-assumption-making/) - Don't ask yourself what is the art of assumption making yet, just ask if you have ever seen the assumption-making as an art? Can you see it now if you take your time to think about it deeply? First time when I asked myself this question, I was like, "Well, at least the person who assumes - [Introducing Gridable — The Missing Grid Content Editor](https://a.lup.dev/wordpress/introducing-gridable-the-missing-grid-content-editor/) - This article is all about Gridable — the missing grid content editor which we hope that will stand as the next WordPress inline grid editor. In the last couple of months we (Pixelgrade crew and I) invested a lot of time and energy to make it happen, so hopefully, you will give it a try and - [Why testing your WordPress site with a Visual Regression tool?](https://a.lup.dev/real-cases/testing-wordpress-site-visual-regression-tool/) - After writing a dedicated article about Automated Testing, I moved to the next phase: Visual Testing. All the hard work helped me came out with a bunch of insights you might consider if you plan to test your WordPress site with a Visual Regression tool. I highly recommend doing so. Also, @dtbaker's tweet and article - [My Journey at WordCamp Europe 2017](https://a.lup.dev/wordcamp/my-journey-at-wordcamp-europe-2017/) - My fellows from Pixelgrade and I attended WordCamp Europe 2017 in Paris, and I must admit it was a blast. Again. Luckily, I haven't lost anything this year. Yaaay! This was my first time in Paris, but visiting a vastly cultural city didn't overcome my expectations as the event itself did. I admit that I'm not - [Before and Beyond Gutenberg](https://a.lup.dev/uncategorized-en/before-and-beyond-gutenberg/) - Hello reader, this article is the mirror of my presentation at WordCamp Bucharest 2018, and if this doesn't make sense while reading it, then it did while I was spoking these words. As you can see from the title I want to talk about Gutenberg and how can we survive after WordPress 5.0 version, which may - [Un trai din streaming?](https://a.lup.dev/ro/pareri/un-trai-din-streaming/) - De vreo doi ani nu mai am rabdare cu continutul de pe youtube si in timp ce codez aleg sa tin un stream de twitch deschis in fundal. Cu timpul, am trecut de la marii streamari internationali, la streamuri romanesti, iar acum fac asta sa ii sa ajut cu un view, un follow si cand - [A fi sau a nu fi termoscanat?](https://a.lup.dev/ro/pareri/a-fi-sau-a-nu-fi-termoscanat/) - Nu am vrut niciodata sa scriu despre politica si nici despre prosti, dar mereu am ramas cu un gust amar cand am vazut in media sau pe sociale, stiri sau intamplari care au fost interpretate prost de catre mase si foarte putini au incercat sa faca ceva in privinta asta. Nu cred ca o sa - [A modern web stack for WordPress plugins or themes in 2024.](https://a.lup.dev/wordpress/a-modern-web-stack-for-wordpress-plugins-or-themes-in-2024/) - I think the deepest way of learning something is by attempting to write about it or to teach others and since I was out-of-date with this subject I've decided to do a freshup about what a WordPress plugin or theme should contain in its development repository. Let's start with an obvious spoiler for people who - [Patience, my young Padawan. You'll get there.](https://a.lup.dev/news/patience-my-young-padawan-youll-get-there/) - I was not a big fan of "Star Wars" but I will not be able to write something interesting very soon. However I may publish some of my own "Tricks, Tips and Hacks" pretty soon so you can come visit me again or follow me on twitter,G+ or facebook for some cool stuff - [Un articol](https://a.lup.dev/ro/uncategorized/un-articol/) - Va urma ... ## Pages - [Homepage](https://a.lup.dev/) - Andrei Lupu — backend developer and WordPress expert exploring AI. Writing on high-performance WP stacks, modern backend architecture, and AI in development. - [About Me](https://a.lup.dev/about-me/) - Hello world My name is Andrei Lupu, and I am a web developer, programmer, gamer, researcher, WordCamp speaker and now a blogger. About me? I could be described as a web enthusiast, WordPress fanboy, and a challenge seeker. I could also be confused with a system which passionately turns a good coffee and headset music - [Resume](https://a.lup.dev/resume/) - ChatGPT summary Name: Andrei LupuOccupation: Full Stack Web DeveloperLocation: Romania Summary:Experienced web developer with a passion for coding and a strong background in WordPress development. Skilled in creating Gutenberg Blocks, advanced UI controls, and integrating WooCommerce features. Open-source advocate and contributor to WordPress.org. Strong leadership skills as a Lead Web Developer, overseeing technical departments and - [Despre mine](https://a.lup.dev/ro/despre-mine/) - Eu! Ce fac? In general lucrez ca si "Inginer Web" unde sunt responsabil pentru arhitectura produselor sau partea de Back-End, dar in ultima vreme munca pe care o fac este atat de diversa incat nu ma mai pot identifica cu un singur domeniu, asa ca fac de toate: Front-end, QA, Team Management si cateodata chiar - [Privacy Policy](https://a.lup.dev/privacy-policy/) - Who we are Our website address is: https://a.lup.dev. What personal data we collect and why we collect it Comments When visitors leave comments on the site we collect the data shown in the comments form, and also the visitor’s IP address and browser user agent string to help spam detection. An anonymized string created from - [Articole](https://a.lup.dev/ro/articole/) ## Categories - [Uncategorized](https://a.lup.dev/ro/category/uncategorized/) - [Wordpress](https://a.lup.dev/category/wordpress/) - [Pixelgrade](https://a.lup.dev/category/pixelgrade/) - [Funny Stuff](https://a.lup.dev/category/funny-stuff/) - [Chrome](https://a.lup.dev/category/chrome/) - [Programming](https://a.lup.dev/category/programming/) - [Gulp](https://a.lup.dev/category/gulp/) - [PhpStorm](https://a.lup.dev/category/phpstorm/) - [News](https://a.lup.dev/category/news/) - [Real Cases](https://a.lup.dev/category/real-cases/) - [Social](https://a.lup.dev/category/social/) - [WordCamp](https://a.lup.dev/category/wordcamp/) - [Team Work](https://a.lup.dev/category/team-work/) - [Visual Tests](https://a.lup.dev/category/visual-tests/) - [Uncategorized](https://a.lup.dev/category/uncategorized-en/) - [Pareri](https://a.lup.dev/ro/category/pareri/) - [AI](https://a.lup.dev/category/ai/) ## Tags - [links](https://a.lup.dev/tag/links/) - [permalinks](https://a.lup.dev/tag/permalinks/) - [rewrite](https://a.lup.dev/tag/rewrite/) - [coding](https://a.lup.dev/tag/coding/) - [fun](https://a.lup.dev/tag/fun/) - [chrome](https://a.lup.dev/tag/chrome-2/) - [developer](https://a.lup.dev/tag/developer/) - [extension](https://a.lup.dev/tag/extension/) - [debug tools](https://a.lup.dev/tag/debug-tools/) - [gulp](https://a.lup.dev/tag/gulp/) - [phpstorm](https://a.lup.dev/tag/phpstorm/) - [workflow](https://a.lup.dev/tag/workflow/) - [frontend](https://a.lup.dev/tag/frontend/) - [plugin](https://a.lup.dev/tag/plugin/) - [wordpress](https://a.lup.dev/tag/wordpress/) - [social](https://a.lup.dev/tag/social/) - [vienna](https://a.lup.dev/tag/vienna/) - [wceu](https://a.lup.dev/tag/wceu/) - [automated](https://a.lup.dev/tag/automated/) - [testing](https://a.lup.dev/tag/testing/) - [plugins](https://a.lup.dev/tag/plugins/) - [propose](https://a.lup.dev/tag/propose/) - [suggestions](https://a.lup.dev/tag/suggestions/) - [language](https://a.lup.dev/tag/language/) - [pot](https://a.lup.dev/tag/pot/) - [art](https://a.lup.dev/tag/art/) - [assumption](https://a.lup.dev/tag/assumption/) - [teamwork](https://a.lup.dev/tag/teamwork/) - [gridable](https://a.lup.dev/tag/gridable/) - [layout grids](https://a.lup.dev/tag/layout-grids/) - [Pixelgrade](https://a.lup.dev/tag/pixelgrade/) - [solution for grids](https://a.lup.dev/tag/solution-for-grids/) - [wordcamp](https://a.lup.dev/tag/wordcamp/) - [wcbuc](https://a.lup.dev/tag/wcbuc/) - [talk](https://a.lup.dev/tag/talk/) - [docker](https://a.lup.dev/tag/docker/) - [performance](https://a.lup.dev/tag/performance/) - [community](https://a.lup.dev/tag/community/) - [AI](https://a.lup.dev/tag/ai/) - [development](https://a.lup.dev/tag/development/) - [react](https://a.lup.dev/tag/react/) - [claude](https://a.lup.dev/tag/claude/) - [tools](https://a.lup.dev/tag/tools/) - [stack](https://a.lup.dev/tag/stack/) - [Vibe Coding](https://a.lup.dev/tag/vibe-coding/) - [Claude Code](https://a.lup.dev/tag/claude-code/) - [AI Ethics](https://a.lup.dev/tag/ai-ethics/) - [Software Engineering](https://a.lup.dev/tag/software-engineering/) ## Tags - [Română](https://a.lup.dev/ro/) - [English](https://a.lup.dev/)