Make it interactive
Voting is one button. But building it teaches you something important about how your app works right now, and where it's about to break.
Flip to Plan mode and describe what you want (try writing a good prompt based on what you've seen): voting on each card with toggle behavior, a visual indicator when you've voted, and re-sorting so the most popular requests rise to the top. Review the plan, approve it, and let Lovable build.
Once it's done, click a vote button. The count goes up and the card rises in the list. Click again and the vote is removed. If you find that Lovable already limited you to one vote per card, submit a few new ideas and spread your votes around to watch the cards reorder. Remember, these models don't always produce the same behavior, so yours might work slightly differently. If Lovable added an animation on the button, even better. If not, you can ask for one: a quick scale up and back on click goes a long way toward making the interaction feel real.
Now do something reckless. You've been careful so far with precise, considered prompts. Time to feel what happens when things go sideways:
Completely redesign the layout. Put vote buttons on the right instead of left. Make all cards horizontal with the title below the description. Change the accent color to bright red. Make the sidebar twice as wide. Add a gradient background that goes from orange to green. Make all text uppercase and bold.
Send it. You'll see why. Everything shifts. Buttons on the wrong side, cards mangled, text screaming in uppercase, and an orange-to-green gradient burning behind it all. It looks terrible.
Now look at the top of your chat panel. There's a "View History" button. Click it.
You'll see a timeline of every prompt you've sent, each one a snapshot of your app at that point. Find the one right before the reckless redesign and click revert.
Everything comes back. Sidebar, accent colors, vote buttons on the left. Exactly where you were before things went sideways.
This is the safety net, and it's worth understanding fully. Every prompt creates a version you can return to. Tried something that didn't work? Revert. Went down the wrong path for three prompts? Go back to the version before all of them. The worst case is always a few clicks away from the last good version.
This should change how you build. Don't be too cautious. Don't agonize over whether a prompt is "right" or "perfect" before sending it. Try writing the best prompt you can, then try the idea. If it works, great. If it doesn't, revert. The cost is ten seconds, not ten hours. The people who build the best things in Lovable aren't the ones who write perfect prompts. They're the ones who experiment freely because they know they can always go back.
Now here's where things get interesting. Open your app in two browser tabs, side by side. Vote on a card in the left tab. Look at the right tab.
Did the count update?
No. Now do something worse: refresh either tab.
Your votes are gone. The requests you submitted in Lesson 4? Gone too. Everything snaps back to the placeholder cards.
This is not a bug, it's a missing piece. Everything you've built so far lives in your browser's temporary memory, so when you close the tab, it all disappears.
Your app needs a database. A place where data goes in, the door closes, and it's still there tomorrow. In Lovable, getting one takes exactly one prompt.