A Pinterest-like Chrome extension for Kobo PLM that allows users to capture inspiration from anywhere on the web and organize it into mood boards linked directly to their styles, components, and suppliers.
- Quick Capture: Right-click any image to pin it to your Kobo boards
- Area Selection: Capture specific areas of any webpage
- Text Snippets: Save important text with formatting preserved
- Color Extraction: Extract and save color palettes from any webpage
- Smart Context: Automatically captures metadata, alt text, and surrounding content
- Create and organize inspiration boards by category
- Link boards to Kobo styles, components, and suppliers
- Collaborate with team members on shared boards
- Private, team, and public visibility options
- Seamless authentication with your Kobo account
- Direct linking to styles, components, and suppliers
- Convert pins to style attachments
- Search and link Kobo items while pinning
- Floating sidebar for browsing boards while researching
- Quick pin button on image hover
- Auto-tagging and keyword extraction
- Bulk operations for organizing pins
- Clone the repository:
git clone https://github.com/kobo-plm/kobo-pinterest-extension.git
cd kobo-pinterest-extension- Install dependencies:
npm install- Load the extension in Chrome:
- Open Chrome and navigate to
chrome://extensions - Enable "Developer mode"
- Click "Load unpacked"
- Select the
kobo-pinterest-extensiondirectory
- Open Chrome and navigate to
The extension will be available on the Chrome Web Store (coming soon).
- Sign In: Click the extension icon and sign in with your Kobo credentials
- Create a Board: Create your first inspiration board or select an existing one
- Start Pinning: Browse any website and right-click images to pin them
- Right-click any image → "Pin Image to Kobo Board"
- Select text → "Pin Selection to Kobo Board"
- Right-click page → "Pin Page to Kobo Board"
- Click extension icon for quick actions
- Capture area, screenshot, or extract colors
- Access recent boards and pins
- Hover over images to see the quick pin button
- One-click to save with auto-selected board
Ctrl+Shift+K: Open popupCtrl+Shift+S: Toggle sidebarCtrl+Shift+C: Start area capture
- Tags: Add tags for easy searching and filtering
- Notes: Add context and descriptions to pins
- Linking: Connect pins to Kobo styles, components, or suppliers
- Positioning: Drag and drop pins on board canvas
The extension requires the following API endpoints on your Kobo server:
// Routes in routes/api.php
Route::prefix('inspiration')->group(function () {
Route::get('boards', 'InspirationController@getBoards');
Route::post('boards', 'InspirationController@createBoard');
Route::get('boards/{id}', 'InspirationController@getBoard');
Route::put('boards/{id}', 'InspirationController@updateBoard');
Route::delete('boards/{id}', 'InspirationController@deleteBoard');
Route::get('pins', 'InspirationController@getPins');
Route::post('pins', 'InspirationController@createPin');
Route::get('pins/{id}', 'InspirationController@getPin');
Route::put('pins/{id}', 'InspirationController@updatePin');
Route::delete('pins/{id}', 'InspirationController@deletePin');
Route::post('pins/{id}/link', 'InspirationController@linkPin');
});Run the migrations to create the necessary tables:
php artisan migrateThis creates:
inspiration_boards- Stores board informationinspiration_pins- Stores individual pinspin_links- Links pins to Kobo entities
Access options by clicking the settings icon in the popup:
- Default Board: Set your default board for quick pinning
- Auto-Tag: Enable automatic tag generation
- Color Extraction: Enable automatic color palette extraction
- Notifications: Configure notification preferences
Update background/api-client.js to point to your Kobo instance:
this.baseURL = 'https://your-kobo-instance.com/api';kobo-pinterest-extension/
├── manifest.json # Extension manifest
├── background/ # Service worker and API client
├── content/ # Content scripts for webpage interaction
├── popup/ # Extension popup interface
├── options/ # Settings page
├── sidebar/ # Floating sidebar component
├── assets/ # Icons and styles
└── lib/ # Shared utilities
npm run buildThis creates a dist/ directory with the production-ready extension.
npm testchrome.contextMenus- Right-click menu integrationchrome.tabs- Tab management and screenshot capturechrome.storage- Persistent storage for auth and preferenceschrome.runtime- Background script communicationchrome.notifications- User notifications
The extension communicates with the following Kobo API endpoints:
POST /api/auth/login- AuthenticationGET /api/inspiration/boards- List boardsPOST /api/inspiration/boards- Create boardPOST /api/inspiration/pins- Create pinPOST /api/files/upload- Upload imagesGET /api/styles- Search stylesGET /api/components- Search componentsGET /api/suppliers- Search suppliers
-
Authentication Failed
- Ensure you're using correct Kobo credentials
- Check if your account has API access enabled
- Verify the API URL is correct
-
Images Not Saving
- Check if the image URL is accessible
- Ensure you have permission to access the image
- Try using the screenshot feature instead
-
Extension Not Loading
- Reload the extension in Chrome
- Check for console errors
- Ensure all files are present
Enable debug mode in the console:
localStorage.setItem('kobo_debug', 'true');- All API communications use HTTPS
- Authentication tokens are stored securely in Chrome storage
- CORS is properly configured for cross-origin requests
- Content Security Policy prevents XSS attacks
- Fork the repository
- Create a feature branch
- Make your changes
- Submit a pull request
Proprietary - Kobo PLM
For support, please contact:
- Email: support@kobo-plm.com
- Documentation: https://docs.kobo-plm.com/extensions/inspiration-board
- AI-powered auto-tagging
- Bulk pin operations
- Board templates
- Export to PDF/PowerPoint
- Video frame extraction
- Font/typography capture
- Pattern recognition
- Trend analysis
- Mobile companion app
- Real-time collaboration
- Advanced image editing
- Integration with design tools
Built with ❤️ by the Kobo team