I Built My Own AI Chatbot with Firebase — What I Learned Along the Way
I’ve always been interested in AI and web development, so I decided to build something of my own instead of only using existing AI tools.
That project became NOVA AI, an AI chatbot designed to help users with questions, learning, coding, brainstorming, and supported image/file tasks.
👉 Try NOVA AI: https://nova-ai-2f71d.web.app/
Why I Started Building It
I wanted to understand what actually goes into building a real AI-powered web application.
Instead of focusing only on the AI response itself, I wanted to learn about the other parts of a real application:
- User authentication
- Chat history
- Database storage
- File/image uploads
- Account management
- Security
- Hosting
- Responsive UI
Building the project helped me understand that an AI application is much more than just connecting an API.
Firebase Authentication
I used Firebase Authentication to handle user accounts.
The application supports features such as:
- Email/password authentication
- Email verification
- Password reset
- Google sign-in
- Account management
One important thing I learned is that passwords should never be stored directly in Firestore.
Firebase Authentication handles the authentication layer while the application uses the authenticated user's UID to associate data with the correct account.
Storing Chat History
A major feature I wanted was persistent chat history.
The basic idea is:
text
User
↓
Firebase Authentication UID
↓
Firestore
↓
Conversations
↓
Messages
Top comments (0)