Bluesky Moderation Helper is a Firefox extension that enhances moderation on Bluesky. It allows moderators to quickly block users, manage block lists, and enjoy engaging visual feedback during the blocking process.
-
Quick Blocking & Context Menu Integration:
- Block users instantly via the right-click context menu.
-
Block List Management:
- Select specific block lists to add users to, ensuring effective moderation.
-
Engaging Visual Feedback:
- Fun particle explosions and animated text appear when blocking users.
-
Cross-Platform Compatibility:
- Works seamlessly on both
bsky.app
andbsky.social
.
- Works seamlessly on both
- Visit the Bluesky Moderation Helper Add-on Page.
- Click "Add to Firefox" to install the extension.
- Follow the on-screen instructions to complete the installation.
- Clone the Repository:
git clone https://github.com/rFoxen/BlueskyModerationExtension.git
-
Login:
- Open the extension popup by clicking the icon in the toolbar.
- Enter your Bluesky credentials to log in.
-
Select a Block List:
- Choose a block list from the dropdown menu in the popup.
-
Block a User:
- Right-click on a user or their content and select "Block User."
-
Enjoy Visual Feedback:
- Watch dynamic particle explosions and animated text when blocking users.
-
Logout:
- Click the "Log Out" button in the popup to log out.
- Node.js (for optional build tools and dependency management).
- Firefox Browser (for extension testing).
- Code Editor (VSCode or Sublime Text recommended).
- Clone the Repository:
BlueskyModerationHelper/ |--- icons/ | |-- icon-48.png | |-- icon-128.png | |-- icon.png |-- content_scripts/ | |-- moderation.js | |-- effects.css |-- popup/ | |-- popup.html | |-- popup.js | |-- popup.css |-- manifest.json |-- README.md |-- LICENSE
- manifest.json: Defines the extension's metadata, permissions, and resources.
- content_scripts/moderation.js: Handles interactions within Bluesky pages, including capturing cursor positions and triggering animations.
- content_scripts/effects.css: Styles for animations and visual effects.
- popup/: Contains the UI for logging in, selecting block lists, and managing sessions.
- background.js: Manages background processes, API interactions, and communication between scripts.
-
Clone the Repository:
git clone https://github.com/rFoxen/BlueskyModerationExtension.git cd BlueskyModerationExtension
-
Open the Project in Your Editor:
- Use your preferred code editor to explore and modify the files.
-
Test the Extension:
- Follow the manual installation steps above to load the extension temporarily in Firefox.
- Test all features to ensure they work as expected.
-
Make Changes and Commit:
git add . git commit -m "Your commit message" git push origin main
-
Iterate Based on Feedback:
- Collect feedback from testers or users.
- Implement improvements and bug fixes as needed.
Contributions are welcome! To contribute:
-
Fork the Repository:
- Click the "Fork" button on the GitHub repository page.
-
Create a Feature Branch:
git checkout -b feature/YourFeatureName
-
Commit Your Changes:
git commit -m "Add Your Feature"
-
Push to Your Fork:
git push origin feature/YourFeatureName
-
Open a Pull Request:
- Navigate to the original repository and click "New Pull Request."
- Describe your changes and submit.
This project is licensed under the MIT License. See the LICENSE file for details.
The extension popup interface showing login and block list selection.
Dynamic particle explosion and animated text upon blocking a user.
- LoginFunction now part of the injected Moderation Helper slide-out
- Removes unneeded Options/popout code
- Adds mobile functionality:
- Block handling moved to physical button:
- To facilitate mobile I've moved block functionality to a injected block button
- Removes right click block user context menu
- Block handling moved to physical button:
- Adds top level block list selection:
- Drop down menu to select current block list that blocks will be sent to
- Count of users in currently selected block list
- Refactor code following OOP principles
-
Bug Fix:
- Fixes bug that autologs out user from extension
-
Security Enhancements:
- Secure Data Handling:
- Continued implementation of encryption for storing sensitive data such as accessJwt using the Web Crypto API.
- Input Validation:
- Added robust input validation to ensure user inputs meet expected formats without altering their actual values.
- Enhanced Content Security Policy:
- Further refined the Content Security Policy to tighten security measures and restrict resource loading.
- Secure Data Handling:
-
Performance Improvements:
- Optimized Notification Handling:
- Improved the efficiency of batched notifications to enhance user experience without compromising performance.
- Optimized Notification Handling:
- Enhanced Visual Effects:
- Introduced professional and fun particle explosions.
- Improved block list name animations with 3D scaling.
- Persisted Block List Selection:
- The selected block list now remembers its position across sessions.
- Notifications:
- Notifications now explicitly state which block list a user was added to.
- Bug Fixes:
- Resolved issues with API requests and error handling.
- Initial Release:
- Basic functionality for blocking users and managing block lists.
- Context menu integration and keyboard shortcuts.
Bluesky Official Website Firefox Developer Hub AT Protocol Documentation