Spaces:
Sleeping
Sleeping
File size: 6,280 Bytes
ee18ce8 2645749 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140 141 142 143 144 145 146 147 148 149 150 151 152 153 154 155 156 157 158 159 160 161 162 163 164 165 166 167 168 169 170 171 172 173 174 175 176 177 178 179 180 181 182 183 184 185 186 187 188 189 190 191 192 193 194 195 196 197 198 199 |
---
title: TalentScout AI
emoji: π€
colorFrom: indigo
colorTo: purple
sdk: streamlit
sdk_version: "1.34.0"
app_file: app.py
pinned: false
---
# π€ TalentScout - AI Hiring Assistant
A sophisticated AI-powered hiring assistant built with Streamlit that streamlines the recruitment process through intelligent candidate screening and technical assessment.
## π Features
- **Automated Candidate Screening**: Collects essential candidate information systematically
- **Dynamic Technical Assessment**: Generates relevant technical questions based on candidate's tech stack
- **Interactive Chat Interface**: User-friendly conversational experience
- **Real-time Progress Tracking**: Visual progress indicators for both candidate and recruiter
- **Data Export Functionality**: Export candidate data and responses in JSON format
- **Responsive Design**: Works seamlessly across different screen sizes
- **Input Validation**: Ensures data quality with email and phone number validation
## π Live Demo
Try the application live on Hugging Face Spaces: [TalentScout AI Assistant](https://huggingface.co/spaces/YOUR_USERNAME/talentscout-ai)
## π How It Works
The application follows a structured screening process:
1. **Welcome & Introduction**: Introduces the AI assistant and process
2. **Personal Information Collection**:
- Full name
- Email address (with validation)
- Phone number (with validation)
- Years of experience
- Desired positions
- Current location
3. **Technical Profile**: Tech stack and expertise areas
4. **Technical Assessment**: Dynamic questions based on provided tech stack
5. **Completion**: Summary and next steps
## π οΈ Technical Stack
- **Frontend**: Streamlit
- **Language**: Python 3.8+
- **Data Processing**: Built-in Python libraries (json, re, datetime)
- **UI/UX**: Custom CSS styling with Streamlit components
## ποΈ Installation & Setup
### Local Development
1. **Clone the repository**
```bash
git clone https://github.com/YOUR_USERNAME/talentscout-ai.git
cd talentscout-ai
```
2. **Create virtual environment**
```bash
python -m venv venv
source venv/bin/activate # On Windows: venv\Scripts\activate
```
3. **Install dependencies**
```bash
pip install -r requirements.txt
```
4. **Run the application**
```bash
streamlit run app.py
```
5. **Open your browser** and navigate to `http://localhost:8501`
### Hugging Face Deployment
1. **Fork/Upload to GitHub**
2. **Connect to Hugging Face Spaces**
3. **Select Streamlit as the framework**
4. **Deploy automatically**
## π Project Structure
```
talentscout-ai/
βββ app.py # Main application file
βββ requirements.txt # Python dependencies
βββ README.md # Project documentation
βββ DOCUMENTATION.md # Detailed code documentation
βββ .gitignore # Git ignore file
```
## π― Key Components
### CandidateInfo Class
- Dataclass for storing candidate information
- Includes validation and structured data management
### HiringAssistant Class
- Main application logic
- Conversation flow management
- Technical question generation
- Input validation and processing
### Conversation Stages
1. Greeting (0)
2. Name Collection (1)
3. Email Collection (2)
4. Phone Collection (3)
5. Experience Collection (4)
6. Position Collection (5)
7. Location Collection (6)
8. Tech Stack Collection (7)
9. Technical Questions (8)
10. Completion (9)
## π§ Configuration
The application includes several configurable elements:
- **Tech Categories**: Predefined technology categories for question generation
- **Question Templates**: Customizable technical questions for different technologies
- **Validation Rules**: Email and phone number validation patterns
- **UI Styling**: Custom CSS for enhanced user experience
## π Supported Technologies
The AI assistant can generate technical questions for:
- **Programming Languages**: Python, Java, JavaScript, C++, C#, Go, Rust, PHP, Ruby, Swift, Kotlin
- **Web Frameworks**: Django, Flask, FastAPI, React, Angular, Vue.js, Node.js, Express, Spring, Laravel
- **Databases**: MySQL, PostgreSQL, MongoDB, Redis, SQLite, Oracle, Cassandra, Elasticsearch
- **Cloud Platforms**: AWS, Azure, GCP, Docker, Kubernetes, Terraform
- **Data Science**: Pandas, NumPy, Scikit-learn, TensorFlow, PyTorch, Matplotlib, Seaborn
- **Mobile**: React Native, Flutter, Android, iOS, Xamarin
## π¨ UI Features
- **Gradient Header**: Eye-catching header with company branding
- **Sidebar Information**: Real-time candidate data display
- **Progress Tracking**: Visual progress bar and stage indicators
- **Chat Interface**: Conversational UI with distinct message styling
- **Responsive Design**: Adapts to different screen sizes
## π€ Data Export
The application provides data export functionality:
- Candidate information summary
- Technical Q&A responses
- Session metadata
- JSON format for easy integration
## π¦ Usage Guidelines
1. **Start Session**: Begin with the welcome message
2. **Follow Prompts**: Answer each question as prompted
3. **Technical Questions**: Provide detailed answers for technical assessment
4. **Review Summary**: Check the completion summary
5. **Export Data**: Download session data if needed
## π Data Privacy
- No data is stored permanently on servers
- Session data is cleared after completion
- Export functionality allows local data storage
- Follows best practices for data handling
## π€ Contributing
1. Fork the repository
2. Create a feature branch (`git checkout -b feature/amazing-feature`)
3. Commit your changes (`git commit -m 'Add amazing feature'`)
4. Push to the branch (`git push origin feature/amazing-feature`)
5. Open a Pull Request
## π License
This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.
## π Acknowledgments
- Built with [Streamlit](https://streamlit.io/)
- Inspired by modern recruitment automation needs
- Designed for seamless candidate experience
## π Support
For support, please create an issue in the GitHub repository or contact the development team.
---
**TalentScout AI Hiring Assistant** - Streamlining recruitment through intelligent automation π |