We will be undergoing planned maintenance on January 16th, 2026 at 1:00pm UTC. Please make sure to save your work.

Inspiration

Reddit's primary goal is to engage people in discussions. Therefore, I aimed to create additional discussion tools based on Devvit web to showcase web capabilities.

What it does

It consists of three steps:

  1. A Redditor raises a question to discuss (e.g., "What is your favorite food?" or "How do you relax after work?").
  2. Interested Redditors submit answers to the question.
  3. Redditors can view a word cloud generated from all submitted answers, providing quick insight into how others think about the question.

How we built it

I used TypeScript for the language, React for the frontend, and Express for the backend. Most of the development was done using Kiro, with only minor manual adjustments. I started with spec coding by defining requirements in human-readable language (e.g., "As a Reddit user, I want to create problems so that I can engage the community with relevant questions"). Kiro then generated a design document that included the architecture, API documentation, and TypeScript definitions. The final step was generating a task list, which defined step-by-step tasks to modify the codebase. After completing these steps, the project was about 80% finished. I then moved on to Vibe coding to make frontend design consistent with Reddit's style. After requesting changes, the chat automatically edited the files for me, resulting in a design that seamlessly integrates with Reddit.

Challenges we ran into

This was my first time using spec coding, so I spent some time becoming familiar with the process. However, it dramatically improved my efficiency for this project. I only needed to focus on high-level thinking to complete it.

What next for R-Voices

I would add more option in creating a Post like providing preset answer, numerical input, etc for more comprehensive expression.

The video background music is from Mixkit with Stock Music Free License.

Built With

Share this project:

Updates