A Bluesky bot that notifies you when you get blocked, added to lists, or when specific accounts make posts.
- Block Notifications: Get notified when someone blocks you
- List Notifications: Get notified when you're added to lists
- Post Monitoring: Get notified when specific accounts make posts
- Easy to Use: Users interact with the bot via DMs with simple commands
- Node.js (v22+)
- npm
-
Clone the repository:
git clone https://github.com/ImLunaHey/lunafications.git cd lunafications -
Install dependencies:
npm install
-
Set up environment variables: Create a
.envfile with:BSKY_USERNAME=your_username.bsky.social BSKY_PASSWORD=your_password_or_app_password SQLITE_LOCATION=path/to/database.db # Optional, defaults to in-memoryNote: For the password, you can use either your full account password or an app password with DM permissions.
-
Start the bot:
npm start
For deployment on platforms like Railway, it's recommended to:
- Set the environment variables in your deployment platform
- Use a persistent storage path for your SQLite database, e.g.,
/data/bsky.db - Mount a volume to the
/datadirectory to ensure database persistence across redeployments
The bot provides instructions to end-users through its profile bio and responds to the following commands:
menu: Display available commandsnotify blocks: Enable block notificationsnotify lists: Enable list notificationsnotify all: Enable all notificationsnotify posts @username: Get notified when a specific user makes a posthide blocks: Disable block notificationshide lists: Disable list notificationshide posts @username: Stop monitoring a specific user's postshide all: Disable all notificationssettings: View current notification settings
npm testnpm run coveragenpm run coverage:watchISC
Profile image and banner by @ex.trathi.cc