🚀 Inspiration
Modern AI assistants often focus only on answering questions, but they rarely provide a personalized experience. I wanted to build an assistant that feels more like a personal companion than a chatbot. The idea was to combine conversational AI, voice interaction, and user customization into a single web application where every user can have their own unique AI assistant.
💡 What it does
EchoAI is an AI-powered web application that enables users to interact naturally through both voice and text.
The application allows users to:
- Create an account and securely log in.
- Customize their own AI assistant by selecting a name and avatar.
- Ask questions using voice or text.
- Receive intelligent responses powered by Google Gemini.
- Listen to responses through text-to-speech.
- Perform browser actions such as opening websites, searching Google, and playing YouTube videos.
- Automatically save conversation history for future reference.
🛠️ How I built it
The frontend was developed using React.js and Vite to create a responsive and interactive user interface.
The backend was built with Node.js and Express.js, exposing REST APIs for authentication, user management, AI communication, and conversation history.
For authentication, I implemented JWT-based login and signup. User information and chat history are stored in MongoDB, while assistant profile images are uploaded to Cloudinary.
To enable natural interaction, I integrated the browser's Web Speech API for speech recognition and Speech Synthesis API for voice responses.
Google Gemini API serves as the AI engine, generating intelligent responses and identifying user intent before sending structured responses back to the frontend.
⚠️ Challenges I ran into
One of the biggest challenges was integrating voice recognition with AI responses while keeping the interaction smooth and responsive.
Another challenge was handling structured responses from Gemini so that the assistant could distinguish between conversational replies and executable browser actions.
Managing authentication, image uploads, persistent chat history, and seamless frontend-backend communication also required careful API design and state management.
🏆 Accomplishments that I'm proud of
- Built a complete full-stack AI application instead of a standalone chatbot.
- Successfully integrated voice recognition, AI response generation, and text-to-speech into a single workflow.
- Implemented personalized assistant customization with user-specific profiles.
- Designed a scalable backend supporting authentication, conversation history, and AI interactions.
- Created a responsive and intuitive user experience that feels natural to interact with.
📚 What I learned
This project significantly improved my understanding of full-stack application development.
I gained hands-on experience with REST API design, JWT authentication, MongoDB integration, Cloudinary, React state management, browser voice APIs, and integrating large language models like Google Gemini into production-style applications.
More importantly, I learned how multiple technologies can work together to build a complete AI-powered user experience.
🚀 What's next for EchoAI
The next version of EchoAI will focus on making the assistant more autonomous and capable.
Planned features include:
- Long-term conversational memory
- Multi-language voice interaction
- Calendar and reminder integration
- Weather and live news support
- Email and WhatsApp automation
- Desktop application using Electron
- Mobile application
- Smart home and IoT integration
- Plugin-based architecture for adding new skills
- Multi-agent AI workflow for handling complex tasks
Built With
- api
- authentication
- axios
- cloudinary
- context
- css3
- express.js
- gemini
- git
- github
- html5
- javascript
- jwt
- mongodb
- mongoose
- multer
- node.js
- npm
- react
- react.js
- rest
- vite
- web-speech-synthesis
Log in or sign up for Devpost to join the conversation.