AIProject / README.md
Saahil-doryu's picture
Upload 18 files
28b5ddf verified
# ClearPass AI - Java Swing Interview Simulator
ClearPass AI is a Java Swing-based desktop application that simulates AI-powered interview questions. It allows users to log in, specify a job role, answer AI-generated questions, receive real-time feedback, and view or export their session summaries.
## ✨ Features
- πŸ” User login and signup system (local file-based)
- 🧠 AI-generated interview questions based on job role (using Google's Gemini API)
- 😊 Sentiment analysis of answers (using HuggingFace's DistilBERT model)
- βœ… Real-time feedback on user responses
- ⏱ Countdown timer per question
- πŸ“Š Progress tracker (answered vs. remaining)
- πŸ’Ύ Save full session summary and result to `.txt` files
- 🧾 Clean MVC-based structure for easy updates
## πŸ›  Requirements
- Java 8 or higher
- Internet connection (for AI API calls)
- JSON library (org.json)
## πŸ“ File Structure
```
project-root/
β”œβ”€β”€ ClearPassAIApp.java
β”œβ”€β”€ ClearPassAIGUI.java
β”œβ”€β”€ InterviewScreen.java
β”œβ”€β”€ LoginPage.java
β”œβ”€β”€ WelcomeScreen.java
β”œβ”€β”€ ResultScreen.java
β”œβ”€β”€ DataModel.java
β”œβ”€β”€ QuestionData.java
β”œβ”€β”€ GeminiClient.java
β”œβ”€β”€ HuggingFaceClient.java
β”œβ”€β”€ users.txt
β”œβ”€β”€ config.properties <-- contains your API keys
```
## πŸ”‘ Setup API Keys
1. Create a `config.properties` file in the root directory.
2. Add your API keys:
```properties
GEMINI_API_KEY=your_gemini_api_key_here
HUGGINGFACE_API_KEY=your_huggingface_api_key_here
```
## ▢️ How to Run
### If using terminal:
```bash
javac -cp ".:lib/json-20250107.jar" *.java
java -cp ".:lib/json-20250107.jar" ClearPassAIApp
```
### If using an IDE:
- Open the project.
- Add the JSON library to your project dependencies.
- Set `ClearPassAIApp` as the main class.
- Run the project.
## πŸ’¬ Sample Credentials
- Username: `dhruvparmar`
- Password: `1234`
You can create new users via the Sign-Up screen.
## πŸ“‚ Output Files
- `username_answers.txt` β†’ contains each Q&A + feedback
- `username_summary.txt` β†’ full interview session
- `username_result.txt` β†’ saved from Result screen (if user clicks save)
## βœ… Future Improvements
- Add more AI models for different types of analysis
- Implement voice input/output
- Add support for different languages
- Enhance the UI with modern design elements
---
Made with πŸ’™ by Dhruv Parmar