A Chrome extension to quickly capture URLs into Semble Collections at https://semble.so
semble.so
at-proto
semble
chrome-extension
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.