Spaces:
Configuration error
Configuration error
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
.txtfiles - π§Ύ 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
- Create a
config.propertiesfile in the root directory. - Add your API keys:
GEMINI_API_KEY=your_gemini_api_key_here
HUGGINGFACE_API_KEY=your_huggingface_api_key_here
βΆοΈ How to Run
If using terminal:
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
ClearPassAIAppas 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 + feedbackusername_summary.txtβ full interview sessionusername_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