This is my submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine.
What I Built
What if your browser had a personal assistant that could listen to you, understand your instructions, and actually help you get things done?
That's the idea behind my AI-Powered Virtual Assistant.
I built a web-based virtual assistant that brings voice interaction and AI-powered assistance together in one application.
Instead of typing every instruction, users can communicate with the assistant using their voice. It supports speech-to-text and text-to-speech, allowing users to interact naturally.
Some of its key features include:
- 🎙️ Voice-based interaction using the Web Speech API.
- 🤖 AI-powered responses using the Gemini API.
- 🔍 Search functionality.
- ▶️ YouTube search.
- 📍 Google Maps integration.
- 🌦️ Weather-related queries.
- 🧮 Mathematical calculations.
- 👤 Personalized assistant profiles with custom names and avatars.
- 🔐 Secure authentication using JWT.
I interpreted the theme Ghost in the Machine as giving a machine a voice and personality — something that feels less like a traditional website and more like an assistant you can actually talk to.
Demo
🚀 Live Demo: https://assitant-gamma.vercel.app/
Code
💻 GitHub Repository: https://github.com/SrutiGupta/virtualassistant
Feel free to explore the code and share your feedback!
How I Built It
I built this project using the MERN stack:
- Frontend: React.js
- Backend: Node.js and Express.js
- Database: MongoDB
- AI Integration: Gemini API
- Voice Interaction: Web Speech API
- Authentication: JWT
- Media Management: Cloudinary
The Web Speech API handles speech recognition and speech synthesis, while Gemini provides the AI-powered conversational responses.
The application connects these components to create a smooth interaction between the user and the assistant.
A note on the AI model: The current version uses Google's Gemini API rather than a locally hosted open-weight model. The application is built with an open web-development stack, but I don't want to misrepresent the model itself as open-source.
Why Does Open Innovation Matter?
Open innovation makes it possible for developers to experiment, learn, build, and improve ideas without having to create every component from scratch.
For this project, open technologies and developer tools helped me bring together frontend development, backend services, authentication, voice interaction, and AI integration.
It also makes the project easier for other developers to explore, understand, extend, and contribute to.
I believe the best part of open innovation is that an idea doesn't have to remain limited to the person who first built it. Someone else can take it, improve it, and create something even better.
The Spirit of It 👻
The most interesting part of this project was seeing a simple voice command turn into an actual interaction.
I started with the idea of building an assistant that could respond to users, but along the way, I got to explore how voice technologies and AI can make web applications feel more interactive.
It reminded me that sometimes the most exciting part of development is making something that once felt futuristic work inside an ordinary browser.
And that's my little ghost in the machine! 👻
Prize Categories
- AI-powered application
Thanks to the Hacktoberfest and DEV communities for creating opportunities like this to experiment, build, and learn.
Happy Hacking! 🚀
Top comments (0)