A Chrome extension to quickly capture URLs into Semble Collections at https://semble.so semble.so
at-proto semble chrome-extension
6
fork

Configure Feed

Select the types of activity you want to include in your feed.

at feature/custom-pds-support 111 lines 3.8 kB view raw view rendered
1# Semble Quick Capture 2 3A Chrome extension for quickly capturing and organizing URLs into Semble Collections using your Bluesky account. 4 5## About 6 7Save interesting web pages directly into your Semble Collections. Simply click the extension icon, add an optional note, select a collection, and save—all without leaving your current page. 8 9## Features 10 11- **One-Click Capture**: Save the current tab's URL with a single click 12- **Bluesky Integration**: Secure authentication using Bluesky App Passwords 13- **Custom PDS Support**: Works with both Bluesky and custom PDS servers 14- **Collection Management**: Choose from your existing Semble Collections 15- **Add Notes**: Include optional notes with your captured URLs 16- **Clean Interface**: Simple, intuitive design that stays out of your way 17 18## Installation 19 20### From Source 21 221. Clone this repository: 23 ```bash 24 git clone git@tangled.sh:renderg.host/semble-chrome-extension 25 cd semble-chrome-extension 26 ``` 27 282. Open Chrome and navigate to `chrome://extensions/` 29 303. Enable "Developer mode" using the toggle in the top right corner 31 324. Click "Load unpacked" and select the extension directory 33 34### From Chrome Web Store 35 36`Coming soon!` 37 38## Usage 39 40### First Time Setup 41 421. Click the Semble extension icon in your browser toolbar 432. Sign in with your Bluesky handle and App Password 44 - Don't have an App Password? Generate one at [Bluesky Settings](https://bsky.app/settings/app-passwords) 45 - Don't have a Bluesky account? [Sign up here](https://bsky.app) 463. (Optional) If you use a custom PDS server, enter your PDS server URL 47 - For Bluesky accounts, leave this blank (defaults to `bsky.social`) 48 - For custom PDS: enter the full URL (e.g., `https://my-pds.example.com`) 49 - The extension supports both HTTP (localhost only) and HTTPS servers 50 51### Capturing URLs 52 531. Navigate to any webpage you want to save 542. Click the Semble extension icon 553. The current URL will be automatically captured 564. (Optional) Add a note about why you're saving this page 575. Select a collection from the dropdown 586. Click "Add to Collection" 59 60### Sign Out 61 62Click the "Sign Out" button in the extension popup to securely log out of your account. 63 64## Development 65 66### Project Structure 67 68``` 69semble-chrome-extension/ 70├── background/ # Background service worker 71├── content/ # Content scripts 72├── icons/ # Extension icons 73├── lib/ # Shared libraries 74├── popup/ # Extension popup UI 75│ ├── popup.html 76│ ├── popup.js 77│ └── styles.css 78└── manifest.json # Extension manifest 79``` 80 81### Building 82 83This extension uses vanilla JavaScript and doesn't require a build step. Simply load the unpacked extension in Chrome as described in the Installation section. 84 85### Permissions 86 87The extension requires the following permissions: 88- `activeTab`: To capture the current tab's URL 89- `storage`: To securely store authentication credentials 90- `scripting`: For future content script functionality 91- `host_permissions`: To communicate with web APIs 92 93## Privacy & Security 94 95- Your Bluesky credentials are stored locally using Chrome's secure storage API 96- The extension only accesses the URL of the current tab when you explicitly click the extension icon 97- No data is collected or shared with third parties 98 99## License 100 101This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details. 102 103## Credits 104 105Semble is being built by [Cosmik Network](https://cosmik.network/). Get involved [here](https://cosmik.network/#connect). 106 107Learn more about Cosmik Network and Semble [here](https://blog.cosmik.network/). 108 109## Contributing 110 111Contributions are welcome! Please feel free to submit a Pull Request.