bsky_phrase_tracker
Val Town is a collaborative website to build and scale JavaScript apps.
Deploy APIs, crons, & store data – all from the browser, and deployed in miliseconds.
Track topics, communities, and conversations on Bluesky by monitoring specific phrases and getting email notifications when they appear in new posts.
- Monitor multiple phrases or terms simultaneously
- Get email notifications for new matching posts
- Customizable search intervals
- Exact phrase matching to reduce false positives
- Rate limiting protection
- Error notifications if something goes wrong
To use this tracker, you'll need:
- A Bluesky account
- A Val Town account to host and run the script
- Environment variables set up for your Bluesky credentials
-
Create a new Val in Val Town and paste the code from this repository
-
Set up your environment variables in Val Town:
BSKY_USER
: Your Bluesky email/handleBSKY_PASS
: Your Bluesky app password (create one in Bluesky settings)
-
Customize the
TRACKED_PHRASES
array with your own phrases to monitor:
const TRACKED_PHRASES = [
"your phrase 1",
"your phrase 2",
"your community name",
// add more phrases as needed
];
- Set up the interval for how often you want the tracker to run using Val Town's scheduling feature.
The tracker:
- Logs into your Bluesky account
- Searches for each tracked phrase
- Filters results for exact matches
- Compiles matching posts into an email
- Sends you a notification with links to the posts
If any errors occur (like login failures), you'll receive an error notification email.
- Adjust the search interval based on your needs
- Modify the email template in the code to change the notification format
- Add additional filters for the posts you want to track
- Customize the delay between searches to adjust rate limiting
If you're not receiving notifications:
- Check your environment variables are set correctly
- Verify your Bluesky credentials
- Ensure your email address is configured in Val Town
- Check the Val Town logs for any error messages
Feel free to fork this code and adapt it for your own needs. If you make improvements, consider sharing them back with the community!
Built using:
- atproto/api for Bluesky integration
- Val Town for hosting and scheduling