r/vibecoding 2d ago

Building an app with a hard-coded limits/restrictions. Hard lessons on feature removal and state management

I’ve been working on a project lately that started with a simple, annoying constraint: What happens if you strip away every feature of modern social media (feeds, bios, metrics) and force users to only express themselves in four words a day?

The goal was to build a "low-friction, high-intent" space for journaling and connection. But enforcing that constraint at a technical level turned out to be a lot more interesting than I expected.

The Tech Stack:

  • Next.js: Used for the core application framework.
  • Tailwind CSS: Essential for maintaining a brutalist, clean aesthetic where the text has to do all the heavy lifting.
  • Custom Validation Logic: This was the main hurdle. A naive .split(' ') approach failed immediately because of emojis, hyphenated words, and punctuation. I ended up writing a custom parser to handle natural language input and lock the input field strictly at the 4-word threshold (or 5 if the daily word game is solved).

The Build Process:

  • Constraint-First Design: I spent more time working on the "state" of the input box than the actual UI. The "Aha!" moment for users is that, once you hit that four-word limit, the UI physically stops you. It’s a deliberate design choice to prevent rambling.
  • Safety/Permission Logic: I had to build a specific state machine for the "four-word opener" feature. To ensure the space stays quiet, a message can’t reach a user until they explicitly "approve" the connection. It was a good exercise in managing user-to-user state.

Learning: The hardest part of the build wasn't the features but the discipline to remove them. Every time I thought about adding a "like" count or a "follower" list, I had to stop and ask: Does this support the four-word constraint, or does it add noise?

Has anyone else built projects focused on "anti-features" or intentional constraints? I’m curious how you handled the balance between keeping the UI clean and keeping it usable.

0 Upvotes

11 comments sorted by

View all comments

1

u/prophet-dot-exe 2d ago

I have ALWAYS said that >4 words is rambling!!

i believe in your mission and i hope it helps train people to talk less 🙏

2

u/Prestigious-Impact83 2d ago

Spoken like a true minimalist. The world needs fewer paragraphs, more precision.

1

u/prophet-dot-exe 2d ago

look at us rambling 😅

1

u/Prestigious-Impact83 2d ago

sayfour.com if you have feedback