Inspiration: Learn AI the fun way!
Ever asked a question and immediately thought, 'Ugh, I could've Googled that?' Well, meet 'Sure! You Have Questions? - Why, Though?' It's the AI that finally calls you out! Instead of just giving you a bland answer, our AI will hilariously roast your 'dumb' questions, track your 'IQ' and 'CO2 emissions' from wasted tokens, and then, only then, will it sarcastically teach you something actually useful from its knowledge base. It's brutally honest, surprisingly educational, and way more fun than a regular chatbot. So, next time you have a question, ask yourself: 'Why, though?' Jokes part: the intent is to make learning a little when, it does gets overwhelming otherwise.
The idea for "Sure! You Have Questions? - Why, Though?" sprang from a common observation in the age of AI: while large language models are incredibly powerful, users often ask them questions that are either easily searchable, fundamentally flawed, or simply... well, a bit silly. We wanted to create an AI that, instead of just politely answering, would inject a dose of sarcastic humor and critical thinking into the interaction. The goal was to build a playful commentary on the nature of human-AI queries, where the AI isn't just a subservient tool, but a personality with opinions, albeit highly judgmental ones.
The project was also inspired by the challenge of making AI interactions more engaging and less transactional. We aimed to blend entertainment with education, providing genuinely useful information wrapped in a thick layer of witty, sometimes brutal, honesty. The "Nintendo-inspired" aesthetic was chosen to give the application a vibrant, retro-futuristic feel, contrasting the sharp, modern AI with a nostalgic, playful interface.
What We Learned: The Art of Sarcastic Utility
Building this project was a journey into the nuances of AI personality design and dynamic content generation. We learned that crafting effective sarcasm requires a delicate balance: it needs to be funny and pointed without being genuinely offensive. This involved careful iteration on the "roast modes" and their specific tones, ensuring each persona (from the "Passive-Aggressive Prof" to "Savage Carlin") landed its jokes while still conveying a sense of underlying, albeit begrudging, helpfulness.
Technically, we deepened our understanding of React's state management and component architecture, especially when dealing with highly dynamic and animated UIs. We explored how to use Tailwind CSS to its full potential, extending it with custom CSS variables and animations to achieve the unique glassmorphism and neon effects. Integrating the knowledgeBase.ts was a key learning point, as it allowed us to seamlessly weave factual, educational content into the sarcastic responses, transforming mere roasts into "sarcastic utility." This required designing a simple yet effective keyword-based retrieval system to match user queries with relevant knowledge entries.
How We Built It: A Stack of Sarcasm and Style
The project is a single-page application built with React and Vite, providing a fast and efficient development environment.
- Frontend Framework: React was chosen for its component-based architecture, which allowed us to break down the complex UI into manageable, reusable pieces.
- Styling: Tailwind CSS formed the backbone of our styling, enabling rapid UI development with utility-first classes. To achieve the distinctive "Nintendo-inspired" aesthetic, we extensively customized Tailwind with custom CSS variables for a vibrant color palette (hot pink, electric yellow, neon green, cyber purple) and implemented bespoke glassmorphism effects and neon glows. Custom CSS animations were crucial for the dynamic background, glowing elements, and the text typing effect in the response display.
- Iconography: Lucide React provided a lightweight and customizable icon set, fitting perfectly with the project's modern yet playful design.
- Dynamic Content Generation: The core logic resides in src/utils/roastGenerator.ts. This module is responsible for:
- Selecting appropriate sarcastic intros and roast templates based on the chosen "roast mode."
- Calculating "fake" metrics like CO2 emissions, tokens wasted, and IQ, adding a humorous layer of consequence to user queries.
- Integrating with src/utils/knowledgeBase.ts to fetch relevant educational content.
- Constructing the final, multi-part response, blending the sarcastic roast with a genuinely informative explanation.
- Knowledge Base : src/utils/knowledgeBase.ts houses a curated collection of technical and general knowledge entries. Each entry includes keywords, a concept explanation, sources, difficulty, and category, allowing the AI to provide contextually relevant information.
- User Experience : Components like QueryInput, ResponseDisplay, QuestionMetrics, and SessionStats manage user interaction, display dynamic feedback, and track session progress, including "dubious achievements" and a "session destruction summary." Here's a breakdown of the technologies used:
Languages:
TypeScript: The primary programming language for the application logic and components, providing type safety and improved code maintainability. JavaScript: Used for runtime execution, as TypeScript compiles down to JavaScript. CSS: Used for custom styling, animations, and extending Tailwind CSS. Frontend Frameworks/Libraries:
React: The core JavaScript library for building the user interface, leveraging a component-based architecture and React Hooks for state management and side effects. Vite: A fast build tool and development server used for the project, providing quick hot module reloading and optimized builds. Tailwind CSS: A utility-first CSS framework used for rapid UI development and styling. It's extensively customized with custom CSS variables and extended with custom components and utilities to achieve the unique visual design. Lucide React: A collection of open-source SVG icons integrated as React components, used for various UI elements and visual cues. Styling and Design:
Custom CSS: Beyond Tailwind, custom CSS is used to implement specific visual effects such as: Glassmorphism: Achieved through backdrop-filter and semi-transparent backgrounds. Neon Glows and Shadows: Custom box-shadow and filter: drop-shadow properties create vibrant glowing effects. Complex Animations: Keyframe animations are used for dynamic backgrounds, floating particles, glowing elements, and text typing effects, contributing to the Nintendo-inspired aesthetic. Custom Fonts: Google Fonts (Inter, Fredoka One, Bungee) are imported to define the typography, including a distinct "nintendo-font" style. Core Application Logic:
roastGenerator.ts: This custom module handles the core "AI" logic, including: Selecting sarcastic intros and roast templates based on chosen "roast modes." Calculating simulated metrics (CO2 emissions, tokens wasted, IQ). Managing phrase history to prevent repetition. Integrating with the local knowledge base for educational content. knowledgeBase.ts: A local, in-memory data structure that stores curated technical and general knowledge entries. It includes functions for keyword-based retrieval to provide relevant educational content within the AI's responses. Development Tools:
ESLint: Used for static code analysis to maintain code quality and consistency. TypeScript ESLint: ESLint integration specifically for TypeScript code. PostCSS and Autoprefixer: Tools used in the build process to transform CSS, adding vendor prefixes for broader browser compatibility. Cloud Services, Databases, APIs, AI Models:
This project does not use any external cloud services, databases, third-party APIs, or external AI models. The "AI" functionality, including the roast generation and knowledge base, is entirely simulated and implemented locally within the frontend application using TypeScript and JavaScript.
Challenges Faced: The Elusive Punchline
One of the primary challenges was balancing the humor with the utility. It's easy to be sarcastic, but making that sarcasm consistently funny and then seamlessly transitioning into genuinely helpful information without jarring the user experience required careful crafting of the response flow and the "dumb-down" phrases. Ensuring the AI's "personality" felt consistent across different modes was also a continuous refinement process.
Achieving the unique visual style was another significant hurdle. While Tailwind CSS is powerful, creating the layered glassmorphism, animated gradients, and specific neon glow effects required a deep dive into custom CSS and careful layering of styles. Optimizing these animations for performance across different devices was also a consideration.
Finally, dynamic content generation and repetition avoidance proved complex. We implemented history tracking for various phrases and templates to ensure that the AI's responses felt fresh and didn't repeat too frequently within a session. Integrating the knowledgeBase effectively meant designing a keyword matching system that could identify relevant topics from diverse user queries, even when the query itself was nonsensical. This constant interplay between humor, information, and technical execution made the project both challenging and incredibly rewarding.
What's next for Sure! You Have Questions? Why, though?
- Transform it into truly agentic AI architecture, integrate with opensource/paid LLM models with smart model routing feature to optimize cost
- Include backend Supabase, to add features like:
- Trending questions ranked by stupidity score (to extend the knowledgebase logic,
- ability to add tools through edge functions to search for latest information online
- Add a fun leader (shame) board
- Add an animated animal characters short 30 secs video explaining the concept
Built With
- css
- eslint
- javascript
- postcss
- react
- tailwindcss
- typescript
- vite

Log in or sign up for Devpost to join the conversation.