Inspiration
We wanted to build a voice-based AI companion that actually feels like a friend — not just another chatbot. Something that talks like Gen-Z, listens like a therapist, and vibes like someone you’d DM at 3AM. That’s how Natsu AI was born — part emotional support, part entertainment, all heart.
What it does
Natsu AI is a Gen-Z bestie bot that listens to your voice, transcribes it, talks back using OpenAI, and speaks the response out loud. You can interact with it through a web interface or use voice input. It's emotionally aware, non-judgmental, and speaks like your real-life Discord pal.
How we built it
Frontend: HTML, CSS, JS with voice button, chat UI, and speech synthesis.
Backend: Python Flask server using OpenAI API for responses.
Voice Input & Output: Used Deepgram for speech-to-text and TTS, fallback with browser’s speech synthesis.
Real-time Chat: Used fetch API for smooth communication between frontend and backend.
Challenges we ran into
Deepgram API limitations with model permissions.
Audio recording issues and handling silent input.
Getting speech synthesis to sound natural across browsers.
CORS and routing issues while connecting Flask to JS.
Accomplishments that we're proud of
Built a full-stack conversational AI that actually talks back.
Designed a Gen-Z-inspired personality prompt that feels relatable and alive.
Integrated voice input/output to make the interaction feel more real.
What we learned
How to integrate OpenAI and Deepgram with Flask.
Managing state between frontend and backend.
How to create a personality using system prompts.
Building fast MVPs that feel good and look clean.
What's next for natsu ai
Add memory so Natsu remembers you and past convos.
Deploy as a mobile app or desktop widget.
Add mood detection and more emotional nuance.
Let users customize Natsu’s voice and personality.
Built With
- api
- code
- deepgram
- flask
- html/css
- javascript
- openai
- pyaudio
- pygame
- pyqt5
- python
- sdk
- speechrecognition
- studio
- vad
- visual
- webrtc
Log in or sign up for Devpost to join the conversation.