{"id":22952571,"url":"https://github.com/saaaaakibhai/scamguard","last_synced_at":"2026-04-09T12:44:29.103Z","repository":{"id":268107336,"uuid":"903339076","full_name":"Saaaaakibhai/ScamGuard","owner":"Saaaaakibhai","description":"This app detect the phishing website. We do use flask in backend for using our train model. To fetch the data used postman. For frontend used Flutter.","archived":false,"fork":false,"pushed_at":"2025-01-05T13:57:24.000Z","size":62250,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-01T23:32:00.083Z","etag":null,"topics":["dart","flask","flutter","joblib","machine-learning","pickle","postman","python","random-forest"],"latest_commit_sha":null,"homepage":"","language":"Python","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/Saaaaakibhai.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"License","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":"2024-12-14T10:54:46.000Z","updated_at":"2025-01-05T13:57:27.000Z","dependencies_parsed_at":"2024-12-14T11:30:16.430Z","dependency_job_id":"62a17a43-c159-4b98-b0bc-3a7267fc5496","html_url":"https://github.com/Saaaaakibhai/ScamGuard","commit_stats":null,"previous_names":["saaaaakibhai/scamguard"],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/Saaaaakibhai/ScamGuard","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Saaaaakibhai%2FScamGuard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Saaaaakibhai%2FScamGuard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Saaaaakibhai%2FScamGuard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Saaaaakibhai%2FScamGuard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/Saaaaakibhai","download_url":"https://codeload.github.com/Saaaaakibhai/ScamGuard/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/Saaaaakibhai%2FScamGuard/sbom","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":259404390,"owners_count":22852179,"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":["dart","flask","flutter","joblib","machine-learning","pickle","postman","python","random-forest"],"created_at":"2024-12-14T15:38:39.147Z","updated_at":"2025-12-30T22:37:19.023Z","avatar_url":"https://github.com/Saaaaakibhai.png","language":"Python","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ScamGuard\n\nScamGuard is a Flutter-based application that integrates a machine learning model to detect scams based on user-provided input. This project was developed as part of a university course on machine learning and serves as an example of deploying machine learning models in real-world applications.\n\n## Features\n\n- **Machine Learning Integration:** \n  - The app uses a **Random Forest Tree** model for prediction, as it provides high accuracy.\n  - The trained models are serialized using Python's **joblib** library to `.pkl` files for easy backend integration.\n\n- **Backend and Frontend Communication:**\n  - A **Flask** backend serves as the bridge between the machine learning model and the Flutter frontend.\n  - The backend returns predictions in JSON format, which are then displayed in the app.\n\n- **User Authentication (Optional):**\n  - Users can register and log in through the app.\n  - User data is securely stored in **Firebase Cloud Database**.\n\n## Technology Stack\n\n### Frontend:\n- **Flutter:** Cross-platform framework for the mobile app.\n\n### Backend:\n- **Python:** For model integration and backend logic.\n- **Flask:** Lightweight Python web framework for serving the API.\n- **Firebase:** For user authentication and data storage.\n\n### Machine Learning:\n- **Random Forest Tree:** A supervised learning algorithm for predictions.\n- **joblib (Python):** Used to serialize and deserialize the trained models.\n\n## Project Workflow\n\n1. **Train the Model:**\n   - The model is trained using a dataset in Python.\n   - Random Forest Tree is used for predictions, and the final model is exported as a `.pkl` file using **joblib**.\n\n2. **Setup the Backend:**\n   - A Flask application (`app.py`) loads the `.pkl` model and serves an API endpoint for predictions.\n   - The backend processes user input and returns predictions in JSON format.\n\n3. **Connect to the Frontend:**\n   - The Flutter app fetches data from the Flask backend via HTTP requests.\n   - Predictions are displayed in the app in a user-friendly format.\n\n4. **User Authentication:**\n   - Optional user registration and login features are implemented using Firebase.\n\n## Getting Started\n\n### Prerequisites\n- **Flutter Development Environment:** [Get started with Flutter](https://docs.flutter.dev/get-started/install).\n- **Python Environment:** Install Python 3.7+ with Flask and joblib libraries.\n\n### Steps to Run the Project\n\n1. **Clone the Repository:**\n   ```bash\n   git clone https://github.com/your-username/scamguard.git\n   cd scamguard\n   **pip install flask joblib**\n   **python app.py**\n   **flutter pub get**\n   **flutter run**\n\nThis version includes:\n1. **Structured Layout**: Clear sections for features, technologies, workflow, and setup instructions.\n2. **Professional Tone**: Improves readability and conveys a professional approach.\n3. **Optional Sections**: Allows flexibility to include screenshots or other project details.\n4. **Getting Started Instructions**: Provides step-by-step guidance for new developers.\n\n## Here Some Demo Picture:\n\n![image](https://github.com/user-attachments/assets/7e21da0f-58db-4a6f-977e-19c97befbe8e)\n![image](https://github.com/user-attachments/assets/57355196-20f6-47cc-95b1-3c0c70692ca0)\n![image](https://github.com/user-attachments/assets/b84c6209-c203-47e8-b8a6-b81de229616c)\n![image](https://github.com/user-attachments/assets/5da1fecf-00e3-40e3-bb75-8a88395825b6)\n\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaaaaakibhai%2Fscamguard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsaaaaakibhai%2Fscamguard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsaaaaakibhai%2Fscamguard/lists"}