{"id":26402397,"url":"https://github.com/invincible1602/feedbacksystem","last_synced_at":"2026-04-17T17:31:13.264Z","repository":{"id":282703701,"uuid":"949404461","full_name":"Invincible1602/feedbacksystem","owner":"Invincible1602","description":"A full-stack feedback system that leverages advanced NLP and interactive dashboards to analyze customer sentiment in real time. Built using FastAPI, React, and Chart.js.","archived":false,"fork":false,"pushed_at":"2025-03-16T12:05:34.000Z","size":0,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-16T12:37:26.074Z","etag":null,"topics":["fastapi","machine-learning","python","reactjs","sentence-transformers"],"latest_commit_sha":null,"homepage":"https://invincible1602.github.io/feedbacksystem/","language":"JavaScript","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/Invincible1602.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-03-16T11:41:53.000Z","updated_at":"2025-03-16T12:10:47.000Z","dependencies_parsed_at":"2025-03-16T12:37:40.553Z","dependency_job_id":"420d7aa8-7586-4ea1-998f-f91ae998ce47","html_url":"https://github.com/Invincible1602/feedbacksystem","commit_stats":null,"previous_names":["invincible1602/feedbacksystem"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Invincible1602%2Ffeedbacksystem","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Invincible1602%2Ffeedbacksystem/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Invincible1602%2Ffeedbacksystem/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Invincible1602%2Ffeedbacksystem/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Invincible1602","download_url":"https://codeload.github.com/Invincible1602/feedbacksystem/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":244056430,"owners_count":20390720,"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":["fastapi","machine-learning","python","reactjs","sentence-transformers"],"created_at":"2025-03-17T15:18:42.750Z","updated_at":"2026-04-17T17:31:13.232Z","avatar_url":"https://github.com/Invincible1602.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Public Feedback System\n\nThis project provides a full-stack solution for analyzing public feedback using a FastAPI backend and a React frontend. It classifies user feedback into positive, negative, or neutral sentiments, generates tags based on the analysis, and stores analytics per company. An email notification is triggered when negative feedback exceeds a configurable threshold.\n\n## Features\n\n- **Sentiment Classification:** Uses Hugging Face's Transformers and Sentence Transformers to analyze feedback.\n- **Tag Generation:** Associates feedback with tags derived from semantic similarity and keyword checks.\n- **Analytics Dashboard:** Tracks sentiment counts and tags per company.\n- **Email Notifications:** Alerts administrators when negative feedback crosses a set threshold.\n- **API Endpoints:**\n  - `/classify/` – Accepts feedback and company name, performs analysis, and updates analytics.\n  - `/analytics/` – Retrieves analytics data. Optionally filters data by company.\n  - `/reset/` – (For testing purposes only) Resets the analytics data for a specified company. Note: In the final product, this endpoint will be removed or secured since resetting will delete stored data.\n- `/` – Health check endpoint confirming that the API is running.\n\n## Prerequisites\n\n- Python 3.8 or later\n- Node.js and npm (for the frontend)\n- Git\n\n## Installation\n\n1. **Clone the Repository:**\n\n   ```bash\n   git clone https://github.com/Invincible1602/Public-Feedback-System.git\n   ```\n\n   Screenshots:\n\u003cimg width=\"872\" alt=\"Screenshot 2025-03-16 at 6 51 09 PM\" src=\"https://github.com/user-attachments/assets/a7b6f7d2-3e04-498f-820b-b61e86af3415\" /\u003e\n\u003cimg width=\"872\" alt=\"Screenshot 2025-03-16 at 6 51 19 PM\" src=\"https://github.com/user-attachments/assets/aa96561d-d446-424a-8c30-58fe7b99775b\" /\u003e\n\u003cimg width=\"872\" alt=\"Screenshot 2025-03-16 at 6 53 09 PM\" src=\"https://github.com/user-attachments/assets/b3a92310-6499-42c2-a96e-a4296c3aeb59\" /\u003e\n\u003cimg width=\"872\" alt=\"Screenshot 2025-03-16 at 6 53 20 PM\" src=\"https://github.com/user-attachments/assets/b68d7523-badf-40e7-9e8e-493843dbbb8b\" /\u003e\n\u003cimg width=\"872\" alt=\"Screenshot 2025-03-16 at 6 56 55 PM\" src=\"https://github.com/user-attachments/assets/045c0cc6-abc1-4530-b27b-0fad2a772726\" /\u003e\n\n\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finvincible1602%2Ffeedbacksystem","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Finvincible1602%2Ffeedbacksystem","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Finvincible1602%2Ffeedbacksystem/lists"}