GitHub: EricTurner3/simple-react-rss-reader

Drag and drop UI

I recently stumbled upon Cursor – The AI Code Editor. It essentially is VS Code powered by Claude for GPT enhancements. The unique thing about this AI is taht it has your entire multi-file codebase as context and can easily search and modify the code when a request is entered:

The issues I was having with Gemini or GPT-4o had to do with the fact it only had context from a single file. When changes needed to be made to another file, it seemed to lose context and then would start hallucinating variable names.
Here’s another example where it used grep on my codebase for a specific function name, and then made changes in multiple files to support the new code:

Another powerful feature was lint validation. After making changes, it would do another pass to see if any lint was throwing validation warnings or errors and keep looping through as many files as it needed to in order to fix the issues. Thanks to Cursor, it seamlessly generated the backend files with a MongoDB connector. I also had it start over on the front end, hook up the front end to the backend (which it did via the api file) and implement drag and drop, which Gemini and GPT-4o both had issues with.

Cursor is a very cool application that can easily turn an idea into a fully functional web application without the user needing to edit much code at all. I still find it is very helpful to know how to read errors and read through some of the code yourself. I ended up getting stuck in an edit loop where Cursor was changing back and forth between using MongoDB’s _id as a primary key and id as a primary and it would cause the APIs to 404. I had to specifically tell the AI to use _id for certain fields. I also had to specifically guide it to certain functions I found in source documents to help it implement, otherwise it had tried using deprecated functions or functionality that didn’t work as intended.

Another super cool thing that only took about another two hours was converting the application into a containerized version. Now with a simple docker-compose up --build the application is ready to go out of the box to setup all dependencies and networking among the database, backend and frontend.