A comprehensive web-based application for BYU-Idaho employees to analyze customer feedback and satisfaction surveys
The BYU-Idaho Sentiment Analysis Tool is an enterprise-grade web application designed specifically for BYU-Idaho employees to analyze customer satisfaction surveys, feedback forms, and other text-based responses. This tool provides professional-grade sentiment analysis with interactive visualizations and comprehensive reporting capabilities.
- Customer Satisfaction Surveys - Analyze student, parent, and stakeholder feedback
- Course Evaluations - Understand sentiment in student course feedback
- Employee Feedback - Process internal survey responses
- Event Feedback - Analyze satisfaction from university events and programs
- General Text Analysis - Any text-based feedback or survey responses
- Interactive Column Selection - Choose any column from your Excel file for analysis
- State-of-the-Art AI - Uses RoBERTa model trained specifically for sentiment analysis
- Flexible Input - Supports various Excel formats (.xlsx, .xls)
- Real-time Preview - See your data before processing
- Multiple Visualizations - Bar charts, pie charts, confidence analysis
- Statistical Insights - Comprehensive metrics and confidence scores
- BYUI Branded - Professional styling with official university colors
- Export Ready - Download analyzed results in Excel format
- History Tracking - View all previous analysis runs
- Secure Storage - Local SQLite database for analysis history
- Easy Retrieval - Download previous results anytime
- Data Privacy - All processing happens locally on your machine
- Intuitive Interface - Web-based, easy-to-use design
- Drag & Drop Upload - Simple file upload process
- Responsive Design - Works on desktop, tablet, and mobile
- No Technical Skills Required - Point-and-click operation
# Clone the repository
git clone https://github.com/BYUI-Information-Technology/CSAT-Sentiment-Analysis-Tool.git
cd sentiment-analysis
# Create virtual environment
python -m venv .venv
source .venv/bin/activate # On Windows: .venv\Scripts\activate
# Install dependencies
pip install -r requirements.txt
# Run the application
python app.py
Then Open your web browser to http://localhost:5001
- Click "Choose File" or drag your Excel file to the upload area
- Supported formats:
.xlsx,.xls - Maximum file size: 16MB
- Review your data in the preview table
- Select the column containing text responses you want to analyze
- Common column names: "Comments", "Feedback", "Response", "Why satisfied text area"
- Click "Analyze Sentiment" to start processing
- The AI model will analyze each response for sentiment (Positive, Negative, Neutral)
- Processing time depends on the number of responses
- View comprehensive charts and statistics
- Understand sentiment distribution across your responses
- See confidence scores for each analysis
- Download the complete Excel file with sentiment scores
- Share insights with your team or stakeholders
- Access previous analyses from the History page
- Operating System: Windows 10+, macOS 10.14+, or Ubuntu 18.04+
- Memory: 4GB RAM (2GB minimum)
- Storage: 2GB free space
- Internet: Required for initial setup (model download)
- Memory: 8GB+ RAM
- Processor: Multi-core CPU
- Storage: 5GB+ free space
- Local Processing: All data stays on your machine
- No Cloud Upload: Survey data never leaves your computer
- Secure Storage: Local SQLite database for history
- FERPA Compliant: Suitable for educational data analysis
- No External APIs: Model runs entirely offline after initial download
This application uses official BYU-Idaho brand colors and styling:
- Primary Blue: #006EB6
- Secondary Blue: #214491
- Accent Blue: #4F9ACF
- Light Blue: #A0D4ED
- The AI model updates automatically as needed
- Download latest release from GitHub
- Replace existing installation
- All data and history preserved
- Model:
cardiffnlp/twitter-roberta-base-sentiment-latest - Type: RoBERTa-based transformer
- Languages: English
- Output: Positive, Negative, Neutral with confidence scores
- Backend: Python Flask
- Frontend: HTML5, Bootstrap 5, JavaScript
- Database: SQLite
- Charts: Matplotlib, Seaborn
- ML Framework: Hugging Face Transformers
README.md- This overview and user guideDISTRIBUTION.md- Deployment and distribution guiderequirements.txt- Python dependenciestemplates/- Web interface templates
This tool is developed for internal BYU-Idaho use and complies with:
- University AI Usage & Data Guide
- University IT security policies
This is an internal BYU-Idaho project. Contributions are welcomed internally.
Empowering data-driven decisions through intelligent, privacy-focused AI solutions