A cross-platform, lightning fast and offline-first bookmark manager built with Tauri, React, and Vite.
PcPocket is a modern bookmark management solution designed to work seamlessly across all major desktop platforms. Unlike traditional browser-based bookmarks, PcPocket stores your bookmarks locally in SQLite, ensuring you always have access to your important links even without an internet connection.
- Cross-Platform: Works on Windows and Linux
- Browser Extension: Available for Firefox and Chromium-based browsers (Chrome, Edge, Brave, Zen, Waterfox etc.)
- Offline-First: All bookmarks stored locally in SQLite database
- Lightning fast: Operate over 100,000+ bookmarks instantly
- Lightweight: Minimal system resource usage
- Modern UI: Built with React for a responsive and intuitive user experience
- Tag System: Organize bookmarks with customizable tags and categories
- Quick Search: Find bookmarks by title and tags
- Data Export/Import: Seamlessly migrate from browser bookmarks
- Custom Parsers: Use custom parsers to import data from your own sources
- Hotswappable Config: Change settings without restarting the app
Pre-built installers are available for:
- Windows (.exe)
- Linux (.deb, .AppImage, .rpm)
Note
Due to some inconsistencies in Tauri's current build system, all Windows builds crash when displaying unpaginated 20K+ rows. Paginated works as expected though. This issue is currently being looked into.
Visit the releases page to download the appropriate version.
The PcPocket extension is available for:
- Edge, Brave, and other Chromium-based browsers
- Zen, Waterfox, and other firefox based browsers
# Clone the repository
git clone https://github.com/dragon-slayer875/PcPocket.git
cd PcPocket
# Install dependencies
npm install
# Development
npm run tauri dev
# Build for production
npm run tauri buildPcPocket uses SQLite for local storage, providing:
- Efficient data storage with minimal footprint
- Fast search and retrieval operations
- Data integrity and reliability
- Easy backup and portability
The current version supports searching by:
- Bookmark titles
- Tags
Tested to operate flawlessly on over 100,000+ rows, with room for more!
PcPocket allows you to create custom parsers for importing data from various sources. This feature is designed for advanced users who want to integrate their own data formats into the application. To create a custom parser, follow these steps:
- Create a python script that reads your data source and outputs it to stdout in the following format:
{
"successful": [
{
"title": "Bookmark Title" (optional),
"link": "https://example.com",
"icon_link": "https://example_icon.com" (optional),
"created_at": <UTC timestamp>,
"tags": ["tag1", "tag2"],
},
...
],
"failed": [
{
"index": <index of the failed item>,
"item": "Item that failed to parse",
"error": "Error message"
},
...
]
}- Set PYTHONPATH environment variable to your standard python library before running the app.
# Linux/macOS
# Replace X.Y with your Python version (e.g., 3.10, 3.11)
export PYTHONPATH=/usr/lib/pythonX.Y:/usr/lib/pythonX.Y/lib-dynload# Windows
# Replace XY with your Python version (e.g., 310 for Python 3.10, 311 for Python 3.11)
set PYTHONPATH=C:\PythonXY\Lib;C:\PythonXY\DLLs- Use the config options in app to add the parser to the list of parsers. Or add your parser to the config file located at:
config/com.pcpocket.app/config.json
(config is the standard config directory for your OS)
# Format:
{
"custom_parsers": [
{
"name": "Parser Name",
"type": "python", (more types coming soon)
"path": "/path/to/your/parser.py",
"supportedFormats": ["file_format1", "file_format2"],
},
...
]
}This project is licensed under the GNU General Public License v3.0 (GPL-3.0) - see the LICENSE file for details.
Profile Link: https://github.com/dragon-slayer875
- Mobile companion app
- Sync options with end-to-end encryption

