{"id":24696746,"url":"https://github.com/manojkp08/student-performance-analysis","last_synced_at":"2026-04-12T04:36:39.673Z","repository":{"id":274340101,"uuid":"922153387","full_name":"manojkp08/student-performance-analysis","owner":"manojkp08","description":"The Student Performance Analyzer is your go-to solution for understanding and improving student performance. By blending the power of machine learning with interactive visualizations, this tool provides educators and learners with personalized insights into learning styles, performance gaps, and actionable improvements.","archived":false,"fork":false,"pushed_at":"2025-01-26T18:13:58.000Z","size":14,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-02-03T02:06:01.003Z","etag":null,"topics":["machine-learning","numpy","pandas","python","requests","scikit-learn","streamlit"],"latest_commit_sha":null,"homepage":"https://student-performance-analysistestline.streamlit.app/","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/manojkp08.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-01-25T13:13:47.000Z","updated_at":"2025-01-26T18:14:02.000Z","dependencies_parsed_at":"2025-01-26T18:24:33.251Z","dependency_job_id":"12da0519-c1ea-416a-918e-4c2d91e4ca3c","html_url":"https://github.com/manojkp08/student-performance-analysis","commit_stats":null,"previous_names":["manojkp08/student-performance-analysis"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manojkp08%2Fstudent-performance-analysis","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manojkp08%2Fstudent-performance-analysis/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manojkp08%2Fstudent-performance-analysis/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/manojkp08%2Fstudent-performance-analysis/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/manojkp08","download_url":"https://codeload.github.com/manojkp08/student-performance-analysis/tar.gz/refs/heads/master","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244901085,"owners_count":20528856,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["machine-learning","numpy","pandas","python","requests","scikit-learn","streamlit"],"created_at":"2025-01-27T02:03:08.714Z","updated_at":"2025-12-30T23:53:37.053Z","avatar_url":"https://github.com/manojkp08.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🎓 Student Performance Analyzer  \n_A Smarter Way to Empower Learning_  \n\n---\n\n## 📜 Project Overview  \n\nThe **Student Performance Analyzer** is your go-to solution for understanding and improving student performance. By blending the power of **machine learning** with **interactive visualizations**, this tool provides educators and learners with personalized insights into learning styles, performance gaps, and actionable improvements.  \n\n### 🚀 Key Features:  \n1. 🧠 **Topic-Wise Performance Analysis**: Identify strengths and weaknesses across different topics.  \n2. 🎯 **Difficulty-Level Insights**: Measure and understand variations in performance by difficulty level.  \n3. 🤖 **ML-Powered Insights**: Leverage machine learning to uncover key performance drivers.  \n4. 📝 **Personalized Recommendations**: Get targeted suggestions for improvement based on performance data.  \n\n---\n\n## Demo Video\n\nWatch the demo of the project in action:\n\n\u003ca href=\"https://drive.google.com/file/d/1kaffbwOTyM-IDgsC1zRkkP5o7PmI4Ehn/view?usp=sharing\" target=\"_blank\"\u003e\n  \u003cimg src=\"https://github.com/user-attachments/assets/9c662ec9-ca79-45c3-ad8c-8fa4c81d5c8c\" alt=\"Watch Video\" width=\"250\"\u003e\n\u003c/a\u003e\n\n\n\n\u003e Click the image above to watch the video or [click here](https://drive.google.com/file/d/FILE_ID/preview).\n\n## Screenshots\n\n\u003cimg src=\"https://github.com/user-attachments/assets/1911db9c-5a90-41e7-bb78-7202a23f8eda\" alt=\"Screenshot 1\" width=\"300\"\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/8e3be966-89e8-4c05-919a-6c280be57f24\" alt=\"Screenshot 2\" width=\"300\"\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/b3e85343-ffeb-4322-ad6b-87978b53e977\" alt=\"Screenshot 3\" width=\"300\"\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/aa83fb0e-7e36-4ac5-9eca-6da4094375bf\" alt=\"Screenshot 4\" width=\"300\"\u003e\n\u003cimg src=\"https://github.com/user-attachments/assets/c229e15f-cacd-4e2c-9815-07b21f953663\" alt=\"Screenshot 5\" width=\"300\"\u003e\n\n\n\n## 📂 Folder Structure  \n\n```plaintext\nstudent-performance-analyser/\n├── app/\n│   ├── __init__.py            # Marks the 'app' directory as a module\n│   ├── analyzer.py            # ML analysis logic and performance insights\n│   ├── data_fetcher.py        # Fetches data from provided URLs\n│   ├── ui.py                  # Streamlit UI for interactive insights\n├── main.py                    # Entry point for the Streamlit app\n├── requirements.txt           # Dependencies for the project\n└── README.md                  # Project overview and setup guide\n```\n\n## ⚙️ Setup Instructions\n1️⃣ Clone the Repository\n```\ngit clone \u003crepository-url\u003e\ncd student-performance-analyser\n```\n2️⃣ Install Dependencies\nUse the command below to install the required libraries:\n```\npip install -r requirements.txt\n```\n3️⃣ Run the Application\nLaunch the Streamlit app using:\n```\nstreamlit run main.py\n```\n4️⃣ Access the Application\nOnce the server starts, visit the URL displayed in your terminal (e.g., http://localhost:8501) to start analyzing performance.\n\n## 🛠️ Approach Description\n**📊 1. Data Collection**\nThe application fetches data from three user-provided URLs:\n\n- **Quiz Data:** Contains quiz-specific metadata.\n- **Submission Data:** Tracks user answers and attempts.\n- **Historical Data:** Provides insights into past performance.\n  \nData is fetched using the requests library and transformed into structured formats for analysis.\n\n**🧮 2. Machine Learning Analysis**\nThe StudentPerformanceAnalyzer class uses a Random Forest Classifier to:\n\nPredict performance potential based on historical data.\nIdentify key performance drivers via feature importance analysis.\n\n**📌 3. Insights Extraction**\n- **Topic Performance:** Aggregates and averages scores across different topics to identify strong and weak areas.\n- **Difficulty Levels:** Measures performance variation across question difficulty levels.\n- **Student Persona:** Categorizes students into personas based on their learning style and performance trends.\n\n**🔍 4. Recommendations**\nThe application generates a personalized list of actionable suggestions, such as:\n\nFocusing on weak topics.\nAddressing challenging difficulty levels.\nImproving key performance factors based on ML analysis.\n\n**🖥️ 5. Streamlit Interface**\nThe Streamlit UI ensures seamless interactivity with:\n- **Data Input Fields:** Enter the URLs for quiz, submission, and historical data.\n- **Creative Visualizations:** View detailed insights in a structured and engaging format.\n- **Expanders:** Peek into raw JSON data for a closer look.\n\n## 🛣️ Future Enhancements\n**✨ What’s Next?**\n\nData Upload: Allow users to upload CSV or JSON files directly for analysis.\nReal-Time ML Training: Enable users to retrain the ML model using their custom datasets.\nEnhanced Visualizations: Add dynamic charts and graphs for deeper insights.\n\n## 💻 Tech Stack\n- **Backend Analysis:** Python, NumPy, pandas, scikit-learn\n- **Frontend Interface:** Streamlit\n- **Data Fetching:** requests\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanojkp08%2Fstudent-performance-analysis","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fmanojkp08%2Fstudent-performance-analysis","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fmanojkp08%2Fstudent-performance-analysis/lists"}