Dark Pattern Buster is a project aimed at identifying and mitigating dark patterns in user interfaces. Dark patterns are deceptive design tactics used in websites and apps to trick users into actions they might not otherwise take. This tool helps to expose such manipulative designs and promote better UX practices.
- Automated Detection: Scans websites for known dark patterns.
- User Reports: Allows users to report new dark patterns.
- Analytics Dashboard: Visualizes data on detected dark patterns.
- Educational Resources: Provides information on how to avoid dark patterns in design.
- Frontend: HTML, CSS, JavaScript
- Backend: Node.js, Express.js, Python
- Frameworks: Flask
- Database: SQLite, MongoDB
The server
folder contains the Node.js server for features like privacy policy check and user-reported dark patterns. The api
folder contains the Python server that automatically detects dark patterns on websites.
- Clone the repository:
git clone https://github.com/Shashankpantiitbhilai/Ecommerce_Sevak.git
- Navigate to the project directory:
cd Ecommerce_Sevak
- Install the required Node.js dependencies:
npm install
- Start the Node.js server:
npm start
- Navigate to the
app
folder and install Python dependencies:cd app pip install -r requirements.txt
- Start the Python server:
python app.py
- Open your browser and go to
http://localhost:3000
. - Use the interface to scan websites for dark patterns.
- View the results and explore educational resources on dark patterns.
We welcome contributions from the community! Here’s how you can get involved:
- Fork the repository.
- Create a new branch for your feature or bugfix.
- Commit your changes.
- Push to your branch.
- Create a pull request.
Please make sure to follow the contribution guidelines.
This project is licensed under the MIT License - see the LICENSE file for details.
- Thanks to the hackathon organizers for inspiring this project.
- Special thanks to all contributors for their hard work and dedication.
For more detailed information, you can view the project documentation: