Save and organize ChatGPT responses. Pin individual messages or entire conversations, add tags, and find them instantly.
- ✨ Features
- 🚀 Quick Start
- 📖 Usage
- 🌐 Website & Deployment
- 📈 Feedback System Setup
- 🛠️ Development
- 🔧 Technical Stack
- 🆘 Support & Troubleshooting
- 📄 License
- Pin individual messages - Save specific responses
- Pin entire chats - Bookmark complete conversations
- 📋 Chat Outline - View conversation structure and jump to any message
- 🏷️ Tag system - 200+ preset tags across 17 categories or create custom tags
- 🔍 Fuzzy search - Type abbreviations like "tst" to find "test-case"
- 🎯 Tag organization - Add up to 3 tags per pin
- 📦 Filter tabs - View all pins, chat pins, or message pins
- ⚡ Jump back - Return to the original conversation
- 💾 Export/Import - Backup and restore your pins
- 🐛 Debug logging - Troubleshooting with persistent debug toggle
- ⚙️ Settings - Consolidated interface
- 💾 Storage & Sync - Free: local storage (10 pins). Pro: Chrome/Firefox Sync. Premium: cloud sync.
- 🌙 Dark mode - Automatic theme detection
Expanding to support all major AI assistants:
- 🤖 Claude (Anthropic)
- 💎 Gemini (Google)
- ⚡ Grok (xAI)
- 🔍 DeepSeek
- And more!
📢 Vote for your favorite in our GitHub Discussions!
Chrome: 🚀 Install from Chrome Web Store
Firefox: 🦊 Install from Firefox Add-ons
One-click install with automatic updates for both browsers.
# Clone repository
git clone https://github.com/devendrapratap02/pingpt-chrome-extension.git
cd pingpt-chrome-extension
# Install dependencies (for building icons/assets)
npm install
# Build extension
npm run build:chrome
# Load in Chrome
# 1. Go to chrome://extensions/
# 2. Enable "Developer Mode"
# 3. Click "Load unpacked"
# 4. Select the build/chrome/ folder- Hover Method - Move mouse over any message → Click "Pin" button
- Right-Click - Select text → Right-click → "Pin selection to Pinboard GPT"
- Quick Pin - Click the "Pin Message" button (bottom-right of ChatGPT)
- Click the "Pin Chat" button (bottom-right, below Chat Outline)
- Name is auto-filled from sidebar
- Description is pre-filled with your first prompt (editable)
- Add up to 3 tags
- Click "Pin Chat"
- Click the "Chat Outline" button (bottom-right of ChatGPT)
- See all messages in a scrollable list
- Click any message to jump directly to it
- Perfect for lengthy debugging sessions or tutorials
- View all pins - Click extension icon in toolbar
- Filter pins - Use tabs to view All / Chats / Messages
- Search - Type in search box to filter by name, content, or tags
- Jump to message - Click "Open" to navigate and highlight
- Export/Import - Backup pins or sync across devices
- Delete - Click "Delete" to remove unwanted pins
Visit our official website: pinboardgpt.app
The website includes:
- Interactive feature showcase with browser detection
- Installation guides for Chrome and Firefox
- Usage tutorials and developer documentation
- User feedback collection system
# Deploy to production
npm run deploy
# Preview deployment
npm run deploy:preview
# Build frontend locally
npm run build:frontend
# Run frontend locally
npm run dev:frontend
# Visit: http://localhost:8080- Browser Detection: Shows appropriate install button for user's browser
- Responsive Design: Works on desktop and mobile
- Feedback System: Collects user feedback via GitHub Issues
- Progressive Enhancement: Works with JavaScript disabled
The website includes a comprehensive feedback system that collects user feedback via GitHub Issues.
# Open GitHub settings
open https://github.com/settings/personal-access-tokens/new
# Configure fine-grained token:
# - Name: Pinboard GPT Feedback
# - Repository: gpt-pinboard-extension (selected repositories only)
# - Permissions: Issues (Read and write), Metadata (Read)vercel env add GITHUB_TOKEN
# Paste your token when promptednpm run deploy
npm run feedback:test # Test the setup- Rate Limiting: 1 submission per 5 minutes per IP
- Spam Protection: Extension verification (form only shown to verified users), math CAPTCHA, honeypot fields, content validation
- Origin Validation: Only accepts requests from approved domains
- Content Filtering: Blocks common spam patterns and malicious content
npm run feedback:issues # View all feedback issues
npm run feedback:logs # Monitor submissions
npm run feedback:env # Check environment setupFor detailed development instructions, see DEVELOPMENT.md.
npm install # Install dependencies
npm run build # Generate icons and assets
npm run dev:chrome # Development build for Chrome
npm run dev:chrome # Development build for Chrome
npm run dev:firefox # Run Firefox build
npm run dev:frontend # Run frontend locallynpm run pack # Package extension for stores npm run release # Build and package in one step
npm run feedback:setup # Setup feedback system npm run feedback:test # Test feedback system npm run feedback:logs # View feedback logs
### Quick Setup for Contributors
```bash
# 1. Clone repository
git clone https://github.com/0xdps/gpt-pinboard-extension.git
cd gpt-pinboard-extension
# 2. Install dependencies
npm install
# 3. Build extension
npm run build
# 4. Load in browser
# Chrome: Load build/chrome/ folder in chrome://extensions/
# Chrome: Load build/chrome/ folder in chrome://extensions/
# Firefox: Load build/firefox/ folder in about:debugging
See DEVELOPMENT.md for complete setup, testing, and contribution guidelines.
| Task | Section | Purpose |
|---|---|---|
| Install extension | Quick Start | Get started in 2 minutes |
| Setup feedback system | Feedback System | Configure GitHub Issues integration |
| Deploy website | Website & Deployment | Deploy to Vercel |
| Development | Development | Build, test, contribute |
| Get help | Support | Troubleshooting guide |
| Legal | PRIVACY.md | Privacy policy |
| Changes | CHANGELOG.md | Version history |
| User Type | Use Cases |
|---|---|
| Developers | Pin code snippets or entire debugging sessions; use Chat Outline to navigate complex technical discussions |
| Researchers | Pin specific insights or complete research conversations; organize with filter tabs |
| Students | Pin study notes or full tutorial conversations; use Chat Outline for lengthy learning sessions |
| Writers | Pin templates or entire brainstorming sessions; navigate long creative discussions easily |
- Manifest V3 - Latest Chrome extension format
- IndexedDB - Local storage via custom wrapper
- XPath + Text Anchors - Dual message location system
- CSP Compliant - No eval(), no remote scripts
- Framework: Hono - Ultra-lightweight (13KB) serverless framework
- Database: Turso - Edge SQLite with Drizzle ORM
- Auth: Google OAuth + Email/Password with JWT tokens
- Deployment: Vercel Serverless Functions (AWS Lambda)
- Performance: 150-300ms cold starts, <100ms warm responses
MIT License - see LICENSE file
- Email: dps.manit@gmail.com
- GitHub Issues: Report a Bug
- GitHub Discussions: Ask Questions
Pins not showing in popup?
- Go to
chrome://extensions/→ Find Pinboard GPT → Click refresh 🔄 - Reload ChatGPT page (F5)
- Try creating a new pin
Pin button not appearing?
- Refresh ChatGPT page
- Check extension is enabled at
chrome://extensions/ - Try right-click method: Select text → Right-click → "Pin selection to Pinboard GPT"
Can't click "Open" button?
- Check popup blocker settings
- Grant extension tab permissions
- Verify conversation still exists
Highlight not showing?
- Wait a few seconds for page to load
- Scroll manually to find message
- Try with a newly created pin
- Name your pins: "Python async explanation" beats "response 1"
- Use tags: Organize with
python,important,todo - Export regularly: Backup your pins weekly
- Date tags: Add
2025-10for time organization
For more help, check out our GitHub Issues or email us directly.
Built for the ChatGPT community. Special thanks to all contributors and users providing feedback!
Made with ❤️ by Devendra Pratap Singh