Jerry is a modern, responsive AI chat application built with React, Vite, and Firebase. It features a sleek dark UI, real-time message streaming, and a smooth mobile experience.
- Real-time Streaming: AI responses stream in real-time for a natural chat experience.
- Thinking Animation: Visual feedback while the AI processes your request.
- Mobile Optimized: Responsive design with a slide-out sidebar and touch-friendly inputs.
- Secure Auth: Firebase Authentication for user accounts.
- Markdown Support: Rich text formatting, including code highlighting and copy-to-clipboard.
- Multi-Environment: Dedicated configurations for development and production.
- Frontend: React 19, Vite, Tailwind CSS 4
- Authentication: Firebase Auth
- Icons: React Icons (Fi, Io5)
- Content: React Markdown, Remark GFM, Rehype Highlight
git clone https://github.com/tejasM17/jerry
cd jerryCreate a .env.development file (or update the existing one) in the root directory. You must provide your own Firebase credentials for authentication to work.
- Go to the Firebase Console.
- Create a new project (or select an existing one).
- Add a "Web App" to your project.
- Copy the
firebaseConfigvalues into your.env.developmentfile:
VITE_API_BASE_URL=http://localhost:5000/api
VITE_FIREBASE_API_KEY=your_api_key
VITE_FIREBASE_AUTH_DOMAIN=your_project.firebaseapp.com
VITE_FIREBASE_PROJECT_ID=your_project_id
VITE_FIREBASE_STORAGE_BUCKET=your_project.appspot.com
VITE_FIREBASE_MESSAGING_SENDER_ID=your_sender_id
VITE_FIREBASE_APP_ID=your_app_idNote: The
VITE_API_BASE_URLshould point to your local Jerry API server. Ensure the backend is running before testing chat features.
# Install dependencies
npm install
# Start development server
npm run devThis frontend requires the Jerry API to function: https://github.com/tejasM17/jerry-api
- Enter: Send message
- Shift + Enter: New line
Jerry can make mistakes. Verify important information.