An interactive web application where users can chat with an AI model (powered by Gemini 1.5). The app stores chat history for logged-in users and provides an intuitive user interface for seamless communication.
- User authentication: Login and logout functionality.
- Chat functionality: Users can send messages and receive responses from the AI.
- Chat history: Stores and displays past chats for logged-in users.
- Markdown formatting: AI responses are formatted using Markdown for better readability.
- Environment variable management: API keys and sensitive data are securely stored and managed.
- Backend: Django
- Frontend: HTML, CSS, Bootstrap
- Database: SQLite (or your configured database)
- AI Integration: Gemini AI API
- Markdown Formatting: Python markdown module
- Clone the Repository:
git clone <repository-url>cd <repository-folder>
- Set Up Environment Variables:
- Create a .env file in the project root:
API_KEY=your-secret-api-key- Add
.envto.gitignoreto prevent accidental commits.
- Install Dependencies:
pip install -r requirements.txt
- Run Migrations:
python manage.py migrate
- Start the Server:
python manage.py runserver- Access the Application: Open
http://127.0.0.1:8000/in your browser.
- Authentication:
- Login to access chat history and save new chats.
- Logout to access the public chat functionality without saving history.
- Chat with AI:
- Type a message in the chat box and click "Send."
- Receive a response formatted with Markdown.
- Logged-in users can view their past conversations.
- Environment Variables
- Ensure the following environment variables are set:
API_KEY: Your Gemini AI API key
- OAuth Intergration to provide secure and seamless login experience
- Adding New Tab which allow topic based conversation
- Expanding to other databases for scalability.
- Improve user interface with additional styling.
- Enable exporting chat history as a file.