Git Product home page Git Product logo

anmolgoel29 / cognigaurd Goto Github PK

View Code? Open in Web Editor NEW

This project forked from dharmeshtanwar56/cognigaurd

0.0 0.0 0.0 6.09 MB

A web extension for identifying dark pattern on websites and shows transparency score of website along with that it also shows about various dark patterns that are used by the web platform

License: MIT License

JavaScript 17.21% Python 46.89% CSS 12.36% HTML 23.54%

cognigaurd's Introduction

CogniGuard πŸ•΅οΈβ€β™‚οΈβœ¨

Overview

CogniGuard is a powerful web extension designed to empower users by identifying and combatting dark patterns on various websites, particularly focusing on E-commerce platforms. Ensuring users a transparent and ethical online experience.

CogniGuard

GitHub code size GitHub contributors GitHub commit activity GitHub issues GitHub License Python Django JavaScript HTML CSS Markdown

GitHub forks GitHub Repo stars

Cogni-BERT Model Evaluation Score

Eval Scores

BERT Fine-Tuned Eval Score

Metric Score
Accuracy 0.985993
Precision 0.985138
Recall 0.985993
F1-Score 0.984211

Confusion Matrix

BERT Confusion Matrix

Project Setup Locally πŸš€

Link of Cogni-BERT Trained Model

  1. Google-drive link --> https://drive.google.com/file/d/10hYsKfWHkT3VHdEmKNOWUIf_QwX3oJMU/view?usp=drive_link

Setting up Django API

  1. clone the git repository locally.
git clone https://github.com/4darsh-Dev/CogniGaurd.git
  1. Install python and setup virtual envionment.

1. Open terminallear in cogniguard folder

pip install virtualenv 
cd api
cd CogniGaurd
python -m venv myenv 

Activating virtual environment named as myenv

1. In Windows πŸͺŸ
.\myenv\Scripts\activate  
2. In Linux/Mac 🐧
 source myenv/bin/activate
  1. Installing required modules and libraries
 pip install -r requirements.txt 
  1. Running Django Development Server
python manage.py makemigrations 
python manage.py migrate 
python manage.py runserver 

-- Server will be started at localhost (example: http://127.0.0.1:8000/)

Setting up CogniGuard Web Extension

  1. Open Google Chrome Browser and visit url
 chrome://extensions/ 
  1. Turn on Developer Mode.
  2. Click on load unpacked and then select the cogniguard-web folder with manifest.json
  3. Click on extension icon and you will find the CogniGuard.

Tech Stack πŸ› οΈ

  • Web Extension: HTML, CSS, JavaScript
  • Python (BeautifulSoup, Scrapy): Web scraping for price data analysis.
  • Django: Backend for API management and Dark pattern report pattern for CogniGuard
  • BERT Model: Fine-tuned for sophisticated pattern recognition.

Features πŸŒπŸ”

  1. JavaScript Code Analysis: Uncover deceptive tactics through DOM manipulation and event listeners.
  2. Price Manipulation Detection: Warn users of potential price manipulation and fake urgency.
  3. Crowdsourced Database: Contribute to a collaborative platform by reporting dark patterns.
  4. Misleading Terms & Conditions Detection: Identify complex terms and potential data leaks.
  5. Transparency Score Calculation: Receive website transparency scores for an informed browsing experience.

Screenshots πŸ“Έ

[Include screenshots of the extension interface in action.] coming soon.

Documentation πŸ“–

Detailed documentation on usage, contribution guidelines, and API integration can be found in the Documentation Link.

Authors πŸ§‘β€πŸ’»

Contributing Guidelines πŸ€πŸš€

Thank you for considering contributing to CogniGuard! We welcome your help in making this project even better.

Here are the key points to guide your contributions:

  • Fork the Repository: Start by forking the CogniGuard repository to your own GitHub account. 🍴

  • Clone the Repository: Clone the forked repository to your local machine using . πŸ’»

git clone https://github.com/4darsh-Dev/CogniGaurd 
  • Create a Branch: Create a branch for your contributions using a descriptive branch name. 🌿

  • Make Changes: Implement your changes or additions, ensuring they align with the project's goals. πŸš€

  • Testing: Test your changes thoroughly to ensure functionality and prevent regressions. βœ”οΈ

  • Commit Changes: Commit your changes with clear, concise messages. πŸ’¬

  • Create Pull Request: Push your changes to your forked repository and create a Pull Request (PR) to the main CogniGuard repository. πŸŽ‰

  • Follow Code Standards: Adhere to coding standards and guidelines defined in the project. πŸ“‹

  • Provide Detailed PR Description: Clearly explain the purpose and impact of your PR. πŸ“

  • Participate in Discussions: Engage in discussions related to your PR and address feedback promptly. πŸ’¬

By following these guidelines, you contribute to the growth and improvement of CogniGuard. Thank you for your valuable contributions! πŸš€

Roadmap πŸ—ΊοΈ

Check out the project's roadmap to understand the planned features, improvements, and future milestones.

  • Creating the CogniGaurd Frontend and Api integration.
  • Building Datasets for fine tuning BERT Deep learning Model.
  • Setting up python virtual environment with necessary modules and libraries.
  • Fine Tuning BERT model (Cogni-BERT) for analyzing terms and conditions page.
  • Testing the BERT model on random websites.
  • Django Backend for serving CogniGuard Landing and report dark pattern pages.
  • Setting up Database for Django app.
  • Adding popup detection using keras and teachable Machine (by Google ) open source.
  • Collecting smaples for popup detectin
  • ...updating soon

Code of Conduct πŸ§‘β€πŸ’Ό

Familiarize yourself with the project's code of conduct to ensure a positive and inclusive community.

  • Welcome to the CogniGuard Community! πŸš€
  • Values: Prioritize inclusivity, respect, collaboration, open-mindedness, and transparency. 🌟
  • Expected Behavior: Embrace positive language, constructive criticism, and acknowledgment of efforts. Adhere to guidelines and maintain a respectful tone. 🌈
  • Unacceptable Behavior: Prohibit harassment, trolling, personal attacks, and privacy violations. 🚫
  • Reporting: Promptly report violations. Investigation includes warnings or removal from the community. πŸ›‘οΈ
  • Conclusion: We aim to create a space where everyone feels welcome, valued, and respected. Join us in fostering a positive and collaborative community! πŸ™Œ

Acknowledgments πŸ™

We express our gratitude to the incredible individuals who have contributed to the development and success of CogniGuard. 🌟 Your dedication, passion, and insights have played a pivotal role in shaping this project.

Special thanks to the open-source community for their continuous support and collaborative spirit. πŸš€ Your contributions, whether big or small, have contributed to the growth and improvement of CogniGuard.

We appreciate the efforts of each tester, developer, and community member who has devoted time and expertise to make CogniGuard a valuable tool.

Thank you for being part of our journey and contributing to a transparent and user-centric online environment. 🌐 Your involvement is crucial to the success of CogniGuard!

Feedback πŸ“¬

We value your feedback! Report issues at [email protected] Propose features, or submit pull requests. Let's create a fair and transparent digital environment together! 🌐✨

cognigaurd's People

Contributors

4darsh-dev avatar amansingh494 avatar anmolgoel29 avatar dharmeshtanwar56 avatar goldy-dev123 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    πŸ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. πŸ“ŠπŸ“ˆπŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❀️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.