{"id":17623720,"url":"https://github.com/wiseaidev/truth-guard","last_synced_at":"2026-01-19T23:01:42.208Z","repository":{"id":165796381,"uuid":"622758447","full_name":"wiseaidev/truth-guard","owner":"wiseaidev","description":"Analyzing a 79k Dataset of Misinformation and Fake News","archived":false,"fork":false,"pushed_at":"2025-03-24T19:29:16.000Z","size":5054,"stargazers_count":1,"open_issues_count":1,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-03-24T20:30:26.257Z","etag":null,"topics":["data-analysis","fastapi","lstm","machine-learning","python","supervised-learning"],"latest_commit_sha":null,"homepage":"","language":"Jupyter Notebook","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"apache-2.0","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/wiseaidev.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":"2023-04-03T02:12:01.000Z","updated_at":"2023-04-04T15:13:01.000Z","dependencies_parsed_at":null,"dependency_job_id":"d56e7d1a-789f-411e-ac38-4b6b4a9513d2","html_url":"https://github.com/wiseaidev/truth-guard","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiseaidev%2Ftruth-guard","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiseaidev%2Ftruth-guard/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiseaidev%2Ftruth-guard/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/wiseaidev%2Ftruth-guard/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/wiseaidev","download_url":"https://codeload.github.com/wiseaidev/truth-guard/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247576646,"owners_count":20961007,"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":["data-analysis","fastapi","lstm","machine-learning","python","supervised-learning"],"created_at":"2024-10-22T21:42:31.180Z","updated_at":"2026-01-19T23:01:42.069Z","avatar_url":"https://github.com/wiseaidev.png","language":"Jupyter Notebook","funding_links":[],"categories":[],"sub_categories":[],"readme":"# Truth Guard\n\n\u003cdiv align=\"center\"\u003e\n\n[![linting: pylint](https://img.shields.io/badge/linting-pylint-yellowgreen)](https://github.com/PyCQA/pylint)\n[![Code style: black](https://img.shields.io/badge/code%20style-black-000000.svg)](https://github.com/psf/black)\n[![Static typing: mypy](http://www.mypy-lang.org/static/mypy_badge.svg)](http://mypy-lang.org/)\n![Codeql](https://github.com/github/docs/actions/workflows/codeql.yml/badge.svg)\n\n\u003c/div\u003e\n\n\n\u003cdiv align=\"center\"\u003e\n\n![banner](./assets/banner.png)\n\n\u003c/div\u003e\n\nbanner.png\n\nA Fully Async-based ML Fake news detection API.\n\n## NoteBook\n\n- Download [GoogleNews-vectors-negative300.bin.gz](https://drive.google.com/u/0/uc?id=0B7XkCwpI5KDYNlNUTTlSS21pQmM) for the **LSTM** model and move it into the `notebook` directory.\n- Download [the dataset from kaggle](https://www.kaggle.com/datasets/stevenpeutz/misinformation-fake-news-text-dataset-79k?resource=download) and move it into the `notebook/data-set` directory.\n- Train and serialize the model.\n\n## Development Requirements\n\n- Make (GNU command)\n- Python (\u003e= 3.9)\n- Poetry (1.2)\n\n## Project Structure\n\n\u003cdetails\u003e\n\u003csummary\u003e\u003ccode\u003e❯ tree app\u003c/code\u003e\u003c/summary\u003e\n\n```sh\n.\n├── model         # Package contains different config files for the `model` app.\n│   ├── crud.py       # Module contains different CRUD operations performed on the database.\n│   ├── models.py     # Module contains different data models for ODM to interact with database.\n│   ├── router.py     # Module contains different routes for this api.\n│   └── schemas.py    # Module contains different schemas for this api for validation purposes.\n├── config.py     # Module contains the main configuration settings for project.\n├── __init__.py\n├── main.py       # Startup script. Starts uvicorn.\n└── py.typed      # mypy related file.\n```\n\n\u003c/details\u003e\n\n## Installation with Make\n\nHaving `make` installed and configured on your machine, you can now run `make` under the root directory of this project to explore different available commands to run:\n\n```sh\nmake\n\nPlease use 'make \u003ctarget\u003e' where \u003ctarget\u003e is one of:\n\nvenv                     Create a virtual environment\ninstall                  Install the package and all required core dependencies\nrun                      Running the app locally\ndeploy-deta              Deploy the app on a Deta Micro\nclean                    Remove all build, test, coverage and Python artifacts\nlint                     Check style with pre-commit\ntest                     Run tests quickly with pytest\ntest-all                 Run tests on every Python version with tox\ncoverage                 Check code coverage quickly with the default Python\nbuild                    Build docker containers services\nup                       Spin up the containers\ndown                     Stop all running containers\n```\n\n### 1. Create a virtualenv\n\n```sh\nmake venv\n```\n\n### 2. Activate the virtualenv\n\n```sh\nsource .venv/bin/activate\n```\n\n### 3. Install dependencies\n\n```sh\nmake install\n```\n\n**Note**: _This command will automatically generate a `.env` file from `.env.example`, uninstall the old version of poetry on your machine, then install latest version `1.2.2`, and install the required main dependencies._\n\n### 4. Run The Project Locally\n\n```sh\nmake run\n```\n\n**Note**: _You have to set **DEBUG=info** to access the docs._\n\n## Access Swagger Documentation\n\n\u003e \u003chttp://localhost:8000/docs\u003e\n\n## Access Redocs Documentation\n\n\u003e \u003chttp://localhost:8000/redocs\u003e\n\n## License\n\nThis project and the accompanying materials are made available under the terms and conditions of the [` Apache License Version 2.0`](https://github.com/wiseaidev/truth-guard/blob/main/LICENSE).\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwiseaidev%2Ftruth-guard","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fwiseaidev%2Ftruth-guard","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fwiseaidev%2Ftruth-guard/lists"}