{"id":50660362,"url":"https://github.com/sellswordsoftware/justbookmarks","last_synced_at":"2026-06-08T02:01:15.447Z","repository":{"id":359695806,"uuid":"1247134884","full_name":"SellswordSoftware/justbookmarks","owner":"SellswordSoftware","description":"A simple desktop bookmark manager that uses the Netscape Bookmark HTML format so you can keep one browser-independent source of truth.","archived":false,"fork":false,"pushed_at":"2026-05-30T22:40:13.000Z","size":45305,"stargazers_count":11,"open_issues_count":0,"forks_count":1,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-30T23:11:08.914Z","etag":null,"topics":["bookmark-manager","bookmarks","browser-independent","cross-browser","desktop-app","go","golang","html-bookmarks","netscape-bookmark-file","svelte","wails"],"latest_commit_sha":null,"homepage":"","language":"JavaScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SellswordSoftware.png","metadata":{"files":{"readme":"README.md","changelog":"CHANGELOG.md","contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-23T00:07:37.000Z","updated_at":"2026-05-30T22:40:17.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/SellswordSoftware/justbookmarks","commit_stats":null,"previous_names":["sellswordsoftware/justbookmarks"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/SellswordSoftware/justbookmarks","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SellswordSoftware%2Fjustbookmarks","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SellswordSoftware%2Fjustbookmarks/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SellswordSoftware%2Fjustbookmarks/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SellswordSoftware%2Fjustbookmarks/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SellswordSoftware","download_url":"https://codeload.github.com/SellswordSoftware/justbookmarks/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SellswordSoftware%2Fjustbookmarks/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34044919,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-08T02:00:07.615Z","response_time":111,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bookmark-manager","bookmarks","browser-independent","cross-browser","desktop-app","go","golang","html-bookmarks","netscape-bookmark-file","svelte","wails"],"created_at":"2026-06-08T02:01:05.199Z","updated_at":"2026-06-08T02:01:15.441Z","avatar_url":"https://github.com/SellswordSoftware.png","language":"JavaScript","funding_links":[],"categories":[],"sub_categories":[],"readme":"# JustBookmarks\n\n`JustBookmarks` is a desktop bookmark manager for people who want one clean, browser-independent source of truth.\n\nIt keeps everything in a plain Netscape Bookmarks HTML file, so you can manage your bookmarks outside any specific browser and import them wherever you want later.\n\n![justbookmarks main window](docs/app.png)\n\n## Download\n\nPrebuilt binaries are available on GitHub Releases:\n\n- https://github.com/SellswordSoftware/justbookmarks/releases/latest\n\n## Why I Made This\n\nI end up switching browsers somewhat regularly: Vivaldi, Zen, Helium, Brave, and whatever else I am trying that month.\n\nWhat I wanted was straightforward:\n\n- one central book of record for my bookmarks\n- an easy way to organize and clean them up\n- a format I could import into basically any browser\n\nMost of the tools I found were not a good fit.\n\n- Some were online services like `raindrop.io`\n- Some were more complex than I wanted, like `linkwarden`\n\n`JustBookmarks` is meant to be simple but complete. It is not trying to be a research tool, a cloud product, or a giant personal knowledge system. It is just an easy way to manage your bookmarks in one place.\n\n## How It Works\n\nThe app uses the **Netscape Bookmark File Format**, which is still the most compatible format for importing bookmarks into browsers.\n\nThat means:\n\n- no proprietary database\n- no required sync service\n- no special export format to learn\n- just one `.html` file\n\nIt is not fancy, and it does not support tags, but it does support folders, nested organization, search, editing, moving, and import/merge workflows.\n\nYou only have to manage one bookmark file. You can sync it, back it up, or version it however you like, because at the end of the day it is just a normal file on disk.\n\n## Keyboard Help\n\nThe app includes a built-in shortcut and workflow reference.\n\nPress `?` or `F1` at any time to open it.\n\n![Keyboard shortcuts and help modal](docs/help.png)\n\n## What You Can Do\n\n- Open and manage a single bookmark HTML file\n- Browse bookmarks in a folder tree\n- Search bookmarks instantly\n- Add, edit, move, and delete bookmarks and folders\n- Refresh titles and favicons\n- Import and merge another bookmark file\n- Undo and redo changes\n- Work primarily from the keyboard if you want to stay off the mouse\n\n## Basic Workflow\n\n1. Open an existing Netscape bookmark file, or create a new one.\n2. Organize your folders and bookmarks.\n3. Save happens automatically as you work.\n4. Import that same file into whichever browser you are using today.\n\nThat is the whole idea: one file, one source of truth, less browser lock-in.\n\n## Development\n\nThis repo is a Tauri app with:\n\n- the frontend under `src/`\n- the Rust desktop host under `src-tauri/`\n- repo-root npm scripts for testing and launch\n\n### Prerequisites\n\nInstall:\n\n- Node.js and npm\n- Rust and Cargo\n- Tauri platform prerequisites for your OS\n\nOn Linux, that usually includes WebKitGTK and related build dependencies required by Tauri.\n\n### Install Dependencies\n\n```bash\nnpm install\n```\n\n### Run In Development\n\n```bash\nnpm run tauri dev\n```\n\nTauri uses the repo-root scripts in `package.json` to prepare the frontend entrypoint before launch.\n\n## Testing\n\nRun the non-browser test suite:\n\n```bash\nnpm test\n```\n\nRun the browser test suite:\n\n```bash\nnpm run test:browser\n```\n\nThe browser runner auto-downloads `chrome-headless-shell` into a repo-local directory when needed and uses `--dump-dom` to execute and validate frontend tests.\n\nGenerate Node coverage:\n\n```bash\nnpm run test:coverage\n```\n\nThis writes LCOV output to `coverage/lcov.info`.\n\nGenerate browser coverage:\n\n```bash\nnpm run test:browser:coverage\n```\n\nThis writes LCOV output to `coverage/browser.lcov`.\n\nGenerate both and merge them:\n\n```bash\nnpm run test:coverage:all\n```\n\nThis writes merged LCOV output to `coverage/all.lcov`.\n\nGenerate a browsable HTML coverage report:\n\n```bash\nnpm run test:coverage:html\n```\n\nThis requires `genhtml` from the `lcov` package. When installed, it writes the HTML report to `coverage/html/`.\n\nRun the standard verification flow:\n\n```bash\nnpm run verify\n```\n\n## Building\n\nBuild a production desktop app:\n\n```bash\nnpm run tauri build\n```\n\n## Frontend Docs\n\nFor frontend work, start with:\n\n- `docs/agent-project-context.md`\n- `docs/frontend-architecture.md`\n- `docs/frontend-maintainability-guidelines.md`\n- `docs/naf-html-usage-guidelines.md`\n- `guide.md`\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsellswordsoftware%2Fjustbookmarks","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsellswordsoftware%2Fjustbookmarks","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsellswordsoftware%2Fjustbookmarks/lists"}