
No to bad for a self hosted website 😄
The project : #
My spouse needed a website for her business. With the long-term requirement of being able to post articles.
Knowing that her computer skills are minimal (she's just a normal user) and that she's mainly used to Microsoft Word Office for writing to write up ...
So the options of “you'll learn Markdown” and giving me the files so I could build them with a modern website generator were immediately ruled out 🤣
My Frontend/backend skills : #
My skills in “dynamic” web development were at their peak about 10/20 years ago. Those were the good old days when we put PHP—PHP4 or 5, of course— directly into HTML (or vice versa) without any framework or MVC concept, and slathered on tons of the mighty jQuery scripts (often copied and pasted from obscure forums) to add as much dynamism as possible to our personal home pages. “Ho My God I have a blink title” ! It was the internet of chaos, it was so cool 🤟
There were no CSS or HTML frameworks at the time, of course. We had to modify the CSS by hand (it was horrible, I always hated CSS... moving a div a few centimeters to the right without breaking the layout drove me crazy).
Later on, I obviously made a few static sites with HTML/CSS frameworks such as Bootstrap or W3.CSS. It was simple and easy to create well-organized pages (goodbye div alignment, haha).
On the other hand, I had to manage the “backend” myself. I think I managed to produce “decent” results with “Python FastCGI” (well, decent... let's just say it worked) :D
Then I stopped web development, even though I still took an interest in it; it wasn't really my job. I am familiar with the names of the tons of frameworks of the incorrigible JavaScript that has managed to take control of the backend 🥲 (Vue, React, Angular, etc.). I’m also watching from time to time ThePrimeagen videos to keep me posted.
Every time I tried to produce something simple with one of these frameworks by reading a tutorial, my reaction was the same: Damn, it's become so complicated to create a simple website ... And why he is redeveloping the web server logic and route management in their code, I don't understand 🤕
But after all this is excepted, modern website manages a lot of traffic and Much more functionality than before you also have to manage smartphone ... So make sens. Of course, there are always more or less modern solutions for generating static sites (like the one I use).
So I might as well tell you that creating a “modern” website that offers users the “simplest” solution would have been to pay a WordPress web developer (I said the forbidden word).
The development phase. #
Let's get straight to the point: I didn't “code” a single line of the website... I only prompted Cursor.
BUT I prompted him, knowing what I wanted and, above all, what I did NOT want.
I was very methodical in the project, first asking him to create a simple front page using the colors I had explicitly provided him with.
For example, I had to specify that he should use a minimal CSS framework, not use a JavaScript framework, and use simple HTML to start with.
If you let the “AI” get excited, it will very quickly pull up “Ok, let's start a project with Vue.js” ... Hold on, buddy. I want a simple page, just with HTML and Pico CSS that’s all.
Then let’s add a bit of “dynamics” on the frontend to manage the smartphone responsive view. Please use alpine.js (I know that alpine is “simple” and mimimal).
Ok now let’s create another page that will be the “contact page” ...
If you are a beginner (and have little or no experience, like me) in web development, don't start with a prompt like “Make me a really cool website with a comment system and a login section where I can post article and let ” Will be an EPIC FAIL.
You'll think you've achieved a decent result, but it will turn out to be a tangled mess of spaghetti code that's impossible to debug and maintain by the third prompt (we'll come back to this later).
I'm not even sure it's possible to develop a complex website, I mean a real website not just a frontend prototype as a complete newbie/layperson. (At least not with Cursor in 2025).
Basically, you have to act like a product owner with a good understanding of technology.
The problems start from the second or third file. #
Simply because AI are great technicians, but they're actually too stupid. Way too stupid. They still don’t have enought “high level view/comprehension” of the project - And I don't know if they ever will -
For example, when you will have create 3 html page with exactly the same header and footer something smart will automaticaly thing about “factoring/templating” ... But not the IA it will create the same page with the same pieces of codes ....
You will need to explicitly request that the code be templated with JS or PHP... when necessary. Similarly, AI can run wild and start writing hundreds of lines of Vanilla JS when a few lines of PHP would have sufficed, or vice versa.
But the good parts ... #
Example with a single prompt: “I would like to optimize the site's performance so that it loads faster on smartphones.”
The agent will create all the webp images, compress them, and adapt them so that they load according to the device's resolution... this part is really impressive.
The same goes for CSS. Just tell it in natural language, pointing out the correct <div> tags so it doesn't make any mistakes, and it will refine the CSS for you. Wonderful. But sometimes it wil create another CSS file and add code into this one instead of appending the current file 🤕
The same goes for the Nginx configuration: “Help me set the right headers/caching for images, etc.” And bam it creates for you a perfectly filled nginx config file.
He also created best practice files for me that I didn't even know existed, such as sitemap.xml and metadata.
Next step, Wordpress headless :
And here is the immortal WordPress ... #
After almost 20 years, it's still there, still full of PHP, still widely deployed, and still leading the way in blog-type solutions and even personalized shopping pages. There are other solution I know.
And still the target of script kiddies who constantly scan open port 443 to find a PHP file to execute.
But WP is hear to stay. Well, the situation is no longer exactly the same in 2025. Enormous progress has been made on the performance side of PHP, and the addition of Redis as a cache helps a lot too. But still, their interface always gives me pain.
But recently, a new trend has emerged: using WP in headless mode. I think this is an excellent compromise, because editors can still use the WP backend to write articles without any special knowledge.
And developers can connect any page with any technology. This also makes it possible to block WP's access to the internet, thereby increasing overall security. In this situation WP just render json or xml through an API.
In a few weeks, I will integrate the WordPress part as headless to create a “blog” section so that she can post articles.
Finally #
Am I satisfied with the overall result? Yes, it is fast, my spouse now has visibility on the internet. She has saved a few thousand euros. Now she needs to post articles to boost her search engine ranking.
But more importantly, my wife is!Would it have been better done by a professional ? Yes, definitely, and even better still, with a professional with Cursor. Since the site is actually a collection of different HTML pages, I had to do URL rewriting with Nginx to hide the .html and .php extensions in the URL. A professional would have handled this more cleanly.
Is the site code perfect? No, definitely not, there are a few errors. I use PHP just to share headers and footers, which is stupid. The site is almost static on the backend. I chose not to use PHP for sending emails I use Web3forms.
How much did it cost me ?
I didn't exceed the quota for my “pro” account on Cursor, and I spent about two days on it, plus one day of optimization and “post” production configuration. A professional could probably have done the same thing just as quickly without AI: Very likely.I’ve used each time the mode “Auto” to select the AI Model.
The overall style is maybe to much “Childish” (Icons everywhere and the style used in the design),