I was in the spec mode here, I said, please create me a movie website, so what it did is it started with this design document, and in this case, I actually told it to start with design instead of requirements. There we go, and then this shows the actual preview of the markdown file, so you can see it created a bunch of different mermaid diagrams that show the architecture of it, gives you sequence diagrams, and so I went back and forth with this and updated and edited it, and it created this all for me.
If I scroll down to the bottom of this document it created, you can see here it created a bunch of property tests, and these are really special tests. It uses FastCheck in this TypeScript in the Node world to do these tests, which actually run dozens if not hundreds of times with different values to make sure that these requirements are satisfied correctly, which is really nice. Then it created this requirements document in, once again, this ears format, so it's really very simple with these user stories, requirements. Let me see if I can open it up again. Here's it in preview. Here's the requirements document. Requirements one, movie data loading. When the application initialized, the filter engine shall load. So it gives you, step by step, exactly what it's doing here.
And then when I went back and forth with this, I got to the task list, and I asked it, hey, in the task list, can we create like an MVP, so it went ahead and updated the task list and even says right here, tasks one through four deliver a working MVP, browsable movie grid with search, genre filtering, sorting, and a full 80s synthwave theme. So it actually redid all the requirements and to get this basically MVP up and running out of the door, which I really enjoyed. I went ahead and just implemented all of them after that, but you could see how it works. You can also see it created this property based tests, which are nice, which I can go back in and take a look at the execution. If I kind of hover over some of them, like I can look at the changes, so I can look at the changes and exactly what it did. Definitely very, very useful in what it's doing. You can also, let me see if I scroll to the bottom here, here it is. So if I just kind of hover, it shows like a little bit of information about the property based test. It's like, with property tests for genre filtering for any movie data set and the extracted genres list must contain exactly a sorted set of unique genres. So it tells me exactly what it did at this point. And then I can even look at the execution of what it did. Okay, let's go back to the demo, I only have one minute left.
So if you want to learn more, you can go to qro.dev or you can join our Discord at Discord.gg slash qro.dev. I highly recommend everyone watching, check it out. It's pretty amazing. I also, here's a QR code, take a snapshot of this, give me feedback on this presentation. Let me know. I'd love to hear about it. And then finally, I have one more QR code. If you want to go to my website at Program with Eric, I have these slides for you to download and take a look at. And make sure you connect with me on LinkedIn at erichandschat. Love to just connect with as many people as I can. And also on BlueSky at erichch or x. Thanks.
Comments