Creating a simple TODO App with Pythagora V1 (Early access)
I got the privilege to be accepted as a beta tester of the Pythagora ai-development platform. Here I will share my experience. If you want more details watch this Video.
https://www.youtube.com/watch?v=4g-1cPGK0GA
As with all software you cannot start without a plan and initial idea of what you want to develop. I tried to input another spec, but somehow the AI transformed this into a todo list.
Ai generated spec,
## Features
- **Display of Todos**: A list that displays all todo items. Each item shows its description and a checkbox to indicate its state (open or completed).
- **Add New Todo**: A button to add a new todo item. Clicking this button will prompt the user to enter a description for the new todo.
- **Toggle State**: Each todo item includes a checkbox. Checking/unchecking this box toggles the todo's state between open and completed.
- **Local Storage**: The application uses the browser's local storage to persist todos between sessions, ensuring that users do not lose their data upon reloading the application.I installed mongodb 8.0 and nodejs as they are normally a reqirement for most projects built with pythagora v1. However this project uses the localStore.
The task built successfully, but I had some issues whith the start app (rocketship) Instead I did, npm run dev, ,manually.
After this I tried to add drag and drop.
The pythagora software makes a plan and implements
During deevelopment it choosed a deprecated module,
Normally during development human testing is still necessary.
This is how I manually started the project.
npm run dev
> AI Scheduler@0.0.0 dev
> vite
Vite configuration is being loaded
VITE v5.4.10 ready in 332 ms
➜ Local: http://localhost:3000/It turns out that it tried to create items that was possible to drag but forgot about those already in the local storage. The did not have an id.
I implemented this as a workaround.
localStorage.removeItem('todos');
This did not solve all problems and after several attempts Pythagora was not able to fix the bug, so I switched to pair programming, but was not able to fix it due to limited time.
More reading, https://github.com/Pythagora-io/gpt-pilot/wiki
The complete sourccode can be found in this repo, https://github.com/Ebiroll/scheduler/tree/main/ai-scheduler
The repo also contains some other sourcecode where I use Codepilot workspace. In another article I will try a side by side comparison by using these two tools. AI-assisted development does not work good enough yet, but I think this is the future of programming. We will become testers and bughunters until the AI also will manage this task.