Scripts2026年4月10日·1 分钟阅读

Linkwarden — Self-Hosted Collaborative Bookmark Manager

Linkwarden is an open-source bookmark manager that saves, organizes, and preserves web pages with full-page screenshots, PDF snapshots, and collaborative collections.

SC
Script Depot · Community
快速使用

先拿来用,再决定要不要深挖

这里应该同时让用户和 Agent 知道第一步该复制什么、安装什么、落到哪里。

git clone https://github.com/linkwarden/linkwarden.git
cd linkwarden
cp .env.sample .env
docker compose up -d

Open http://localhost:3000 — register and install the browser extension to start saving bookmarks.

介绍

Linkwarden is a self-hosted, collaborative bookmark manager designed to collect, read, annotate, and permanently preserve web pages. Unlike simple bookmark tools, Linkwarden captures full-page screenshots and PDF snapshots of every saved link — ensuring your bookmarks survive even if the original page disappears.

With 17.8K+ GitHub stars and AGPL-3.0 license, Linkwarden provides a privacy-respecting alternative to Pocket, Raindrop.io, and other cloud bookmark services.

What Linkwarden Does

  • Save & Organize: Save links with tags, collections, and descriptions
  • Page Preservation: Automatic full-page screenshots and PDF snapshots of every saved link
  • Full-Text Search: Search across saved page content, not just titles and URLs
  • Collaboration: Share collections with team members, with permission controls
  • Browser Extension: One-click save from Chrome, Firefox, and Safari
  • Mobile PWA: Progressive web app for mobile bookmark access
  • Import/Export: Import from Pocket, Raindrop, browser bookmarks (HTML/JSON)
  • RSS Feeds: Subscribe to collections via RSS
  • Tags & Collections: Hierarchical organization with nested sub-collections
  • Reading List: Mark bookmarks as read/unread with reading progress

Architecture

┌──────────────┐     ┌──────────────┐     ┌──────────────┐
│  Next.js     │────▶│  Next.js API │────▶│  PostgreSQL  │
│  Frontend    │     │  + Prisma    │     │  (Data)      │
└──────────────┘     └──────┬───────┘     └──────────────┘
                            │
                     ┌──────┴───────┐
                     │  Playwright  │
                     │  (Screenshot │
                     │  & Archive)  │
                     └──────────────┘

Self-Hosting

Docker Compose

services:
  linkwarden:
    image: ghcr.io/linkwarden/linkwarden:latest
    ports:
      - "3000:3000"
    environment:
      DATABASE_URL: postgresql://linkwarden:linkwarden@postgres:5432/linkwarden
      NEXTAUTH_SECRET: your-random-secret
      NEXTAUTH_URL: http://localhost:3000
      NEXT_PUBLIC_DISABLE_REGISTRATION: "false"
      ARCHIVAL_METHOD: screenshot,pdf
    depends_on:
      - postgres
    volumes:
      - linkwarden-data:/data/data

  postgres:
    image: postgres:16-alpine
    environment:
      POSTGRES_USER: linkwarden
      POSTGRES_PASSWORD: linkwarden
      POSTGRES_DB: linkwarden
    volumes:
      - pg-data:/var/lib/postgresql/data

volumes:
  linkwarden-data:
  pg-data:

Key Features

Page Archival

Every saved link automatically gets:

  • Screenshot: Full-page rendered screenshot (like Wayback Machine)
  • PDF Snapshot: Complete page saved as PDF
  • Readable View: Clean, readable text extraction

This means even if a website goes offline, you still have the content.

Browser Extension

Available for Chrome, Firefox, and Safari:

  • Right-click any link to save
  • Quick-add popup with tag and collection selector
  • Keyboard shortcut (Ctrl+Shift+L)

Collaboration

  • Create shared collections
  • Invite team members with view/edit/admin roles
  • Activity feed for shared collections
  • Public collections with shareable links

API

# Save a link
curl -X POST http://localhost:3000/api/v1/links 
  -H "Authorization: Bearer YOUR_TOKEN" 
  -H "Content-Type: application/json" 
  -d '{"url": "https://example.com", "collection": {"id": 1}, "tags": [{"name": "dev"}]}'

# Search links
curl "http://localhost:3000/api/v1/links?searchQueryString=react&searchByName=true&searchByUrl=true" 
  -H "Authorization: Bearer YOUR_TOKEN"

Linkwarden vs Alternatives

Feature Linkwarden Pocket Raindrop.io Wallabag
Open Source Yes (AGPL-3.0) No No Yes (MIT)
Self-hosted Yes No No Yes
Page archive Screenshot + PDF Simplified No Article text
Collaboration Yes No Yes No
Full-text search Yes Premium Yes Yes
Browser ext. Yes Yes Yes Yes

常见问题

Q: 保存网页截图占用多少存储? A: 每个网页截图约 0.5-2MB(PNG),PDF 约 0.2-1MB。如果你保存大量链接,建议分配足够的存储空间。可以在设置中选择只保存截图或只保存 PDF。

Q: 可以从浏览器书签导入吗? A: 可以。支持从浏览器导出的 HTML 书签文件导入,也支持从 Pocket、Raindrop.io 和 Omnivore 的导出文件导入。

Q: 支持多用户吗? A: 支持。每个用户有独立的书签空间,可以通过共享集合进行协作。管理员可以控制是否开放注册。

来源与致谢

讨论

登录后参与讨论。
还没有评论,来写第一条吧。

相关资产