A modern web application for processing voice complaints using AI-powered transcription and response generation.
- 🎤 Voice Complaint Processing: Upload and process voice recordings
- 🤖 AI-Powered Transcription: Accurate speech-to-text conversion
- 💬 Automated Response Generation: AI-generated responses to complaints
- 🔒 Secure File Storage: AWS S3 integration for secure file handling
- 👤 User Authentication: Secure login and account management
- 📱 Responsive Design: Seamless experience across all devices
- Framework: Flask (Python)
- Database: MySQL
- Authentication: JWT
- Cloud Storage: AWS S3
- AI Services: OpenAI API
- Voice Services: Twilio
- Framework: React 18
- Language: TypeScript
- Build Tool: Vite
- Styling: Tailwind CSS
- State Management: React Query
- Python 3.8+
- Node.js 16+
- MySQL 8+
- AWS Account
- OpenAI API Key
- Twilio Account
-
Clone the Repository
git clone https://github.com/RavirajWadnerkar/ClearCall.git cd ClearCall
-
Set Up Backend
cd backend python -m venv venv source venv/bin/activate # On Windows: venv\Scripts\activate pip install -r requirements.txt
-
Set Up Frontend
cd frontend npm install
-
Configure Environment Create a
.env
file in the backend directory with:# JWT Configuration JWT_SECRET_KEY=your_jwt_secret # Database Configuration DB_HOST=localhost DB_USER=your_db_user DB_PASSWORD=your_db_password DB_NAME=clearcall DB_PORT=3306 # AWS Configuration AWS_ACCESS_KEY_ID=your_aws_access_key AWS_SECRET_ACCESS_KEY=your_aws_secret_key AWS_BUCKET_NAME=your_bucket_name AWS_REGION=your_aws_region # OpenAI Configuration OPENAI_API_KEY=your_openai_api_key # Twilio Configuration TWILIO_ACCOUNT_SID=your_twilio_sid TWILIO_AUTH_TOKEN=your_twilio_token TWILIO_PHONE_NUMBER=your_twilio_phone
-
Start Backend Server
cd backend python main.py
The backend will run on
http://localhost:5000
-
Start Frontend Development Server
cd frontend npm run dev
The frontend will run on
http://localhost:8000
- JWT Authentication for secure API access
- Password Hashing using bcrypt
- Rate Limiting to prevent abuse
- CORS Protection for API security
- Input Validation for all requests
- Secure File Upload handling
- HTTP Security Headers
-
POST /auth/signup
- Create new account{ "name": "string", "email": "string", "password": "string", "phone": "string" }
-
POST /auth/login
- User login{ "email": "string", "password": "string" }
-
POST /voice/upload
- Upload voice file- Accepts multipart/form-data
- File size limit: 10MB
- Supported formats: .mp3, .wav, .m4a
-
POST /voice/process
- Process complaint{ "file_path": "string", "user_id": "number" }
GET /user/profile
- Get user profilePUT /user/profile
- Update profile
The application includes several monitoring features:
- Health Check endpoint (
/health
) - Error Logging with levels
- Performance Metrics
- Rate Limit Monitoring
- File Upload Tracking