Developer Tools Open Source Software 104 vues

denho/faved: Self-Hosted Bookmark Manager with Nested Tagging

B
Bright Coding
Auteur
denho/faved: Self-Hosted Bookmark Manager with Nested Tagging

denho/faved: Self-Hosted Bookmark Manager with Nested Tagging

Bookmark collections grow chaotic fast. Developers accumulate hundreds of links across browsers, devices, and teams—documentation tabs, API references, blog posts, GitHub repos—until finding anything becomes a search through browser history or a mess of flat folders. Existing tools often force cloud dependency, lack structural organization, or slow down with scale. denho/faved addresses this directly: a free, open-source bookmark manager built for large collections, with customizable nested tags, local data storage, and a UI optimized for speed. With 1,173 GitHub stars and active development (last commit July 9, 2026), it's positioned as a credible alternative for developers who want control over their data without sacrificing organizational power.

What is denho/faved?

denho/faved is a private, open-source bookmark manager created by developer denho and released under the MIT License. Built in TypeScript with a React↗ Bright Coding Blog frontend and PHP 8/SQLite backend, it targets users who need to handle substantial bookmark collections efficiently. The project emphasizes local data ownership—all data stores locally by default—with no external dependencies for self-hosting.

The tool sits at the intersection of personal knowledge management and developer tooling. Unlike SaaS bookmark services that lock data behind subscriptions, denho/faved offers two deployment paths: free self-hosting or a managed cloud option with encryption and automatic backups. This dual model reflects a pragmatic approach to open-source sustainability without compromising the core self-hosting promise.

Technically, the project uses a modern but conservative stack: React with Tailwind CSS↗ Bright Coding Blog and Shadcn UI components on the frontend, served by Vite; PHP 8 with Apache and SQLite on the backend. This choice prioritizes deployment simplicity over bleeding-edge architecture—SQLite eliminates database server setup, and the monolithic structure keeps the project approachable for contributors. The repository shows healthy community engagement with 65 forks, suggesting active experimentation and potential contributions.

Relevance now stems from growing developer awareness of data sovereignty and the limitations of browser-native bookmarking. As browser vendors reduce bookmark feature investment and cloud services impose pricing changes or shutdowns, tools like denho/faved offer predictable, inspectable alternatives.

Key Features

Nested Tag System The standout feature is hierarchical tagging. Users can structure tags arbitrarily deep—for example, placing "Go" and "Python↗ Bright Coding Blog" under "Programming Languages → Backend." This mirrors filesystem organization but with the flexibility of a graph. Tags support color coding and descriptions, with icon customization planned. A sidebar enables direct tag search and filtering, with optional "tag rollup" to include child-tag items in parent views. Frequently used tags can be pinned for one-click access.

Automated Bookmark Enrichment The system automatically fetches titles, descriptions, and preview images when adding URLs. Duplicate detection prevents redundant entries. Automated tagging is marked as planned, suggesting active roadmap development.

Efficiency-First UI All major actions—search, filtering, editing—remain accessible without screen navigation. The interface is fully responsive across mobile, tablet, and desktop, and installable as a Progressive Web App (PWA) for near-native mobile experience. Light/dark mode syncs with system preferences. Instant search, flexible sorting, and bulk actions (delete, refetch, tag) support large-collection management. Users can customize layouts (card/list/table), visible fields, and sidebar configuration.

Integration Ecosystem Browser capture happens through a Chrome extension or a lightweight bookmarklet that works across any browser without installation. For Apple ecosystem users, Shortcuts integration enables saving from the native share sheet on iOS, macOS, and iPadOS.

Migration Support Import preserves folder structure from Chrome, Safari, Firefox, and Edge through nested tag mapping. Third-party migrations from Raindrop.io and Pocket retain collections, tags, and metadata.

Use Cases

Development Team Knowledge Bases Engineering teams accumulate shared links: deployment runbooks, incident postmortems, architecture decision records. Nested tags enable domain-based organization ("Infrastructure → Kubernetes → Networking") that flat tagging cannot replicate. Self-hosting keeps proprietary documentation URLs within organizational infrastructure.

Personal Research Workflows Academic researchers or technical writers managing hundreds of sources benefit from hierarchical classification. A "Papers → 2024 → Distributed Systems" structure, combined with color-coded status tags ("Read", "To Review", "Cited"), creates a navigable research corpus. The PWA install enables offline reference access.

Cross-Platform Bookmark Unification Developers working across multiple browsers and devices—personal laptop, work workstation, phone—often have fragmented bookmark collections. The import pipeline consolidates these, and the bookmarklet provides a consistent save mechanism regardless of current browser.

Privacy-Conscious Link Archiving For users avoiding commercial services due to data mining concerns or service longevity risks, local SQLite storage with optional encrypted cloud backup provides a verifiable ownership model. The MIT license guarantees perpetual usage rights.

Content Curation and Publishing Bloggers or newsletter authors curating link lists can use nested tags to stage content by theme and publication date, with bulk actions to manage large candidate pools before final selection.

Installation & Setup

denho/faved offers two deployment paths. The self-hosted route requires no external dependencies.

Self-Hosted Installation

The project provides dedicated documentation at faved.to/docs/getting-started/installation. Based on the README's project structure, deployment involves standard PHP/Apache configuration:

# Clone the repository
git clone https://github.com/denho/faved.git
cd faved

# The /public directory contains web-accessible files
# Configure Apache document root to point to /public
# Ensure PHP 8 and required extensions are installed
# SQLite database initializes automatically in /storage

The /storage directory handles database persistence. No MySQL↗ Bright Coding Blog/PostgreSQL↗ Bright Coding Blog setup is required. The /framework and /models directories contain core application logic; /controllers handle request routing; /views contains HTML templates. Frontend assets in /frontend build through Vite.

Cloud Version

For zero-setup deployment: faved.cloud/signup with automatic backups and support. Data is encrypted at rest.

PWA Installation

After deployment, install via browser "Add to Home Screen" functionality. Documentation covers platform-specific steps at faved.to/docs/getting-started/installing-as-a-pwa-app.

Real Code Examples

The README does not contain extensive inline code samples. The following reflects the actual project structure documentation and integration patterns as provided:

Project Structure Reference

Advertisement
/controllers    # Application controllers
/frontend       # React frontend source files
/framework      # Core framework components
/models         # Data models
/public         # Web-accessible files
/storage        # Database storage
/utils          # Utility classes
/views          # HTML templates

This structure indicates a conventional MVC-influenced PHP application with clear separation concerns. The /frontend directory houses the React/Vite build pipeline, while /public serves as the Apache document root—standard practice for PHP applications that prevent direct access to application code.

Browser Bookmarklet Integration

The bookmarklet provides cross-browser saving without extension installation. Implementation details are documented at faved.to/docs/getting-started/using-browser-bookmarklet. The bookmarklet likely constructs a URL with encoded page metadata, transmitted to the user's denho/faved instance.

Apple Shortcuts Integration

For iOS/macOS native share sheet integration:

# The shortcut receives URL and optional title from system share sheet
# Communicates with configured denho/faved instance
# Documentation: faved.to/docs/getting-started/saving-with-apple-shortcut

The README explicitly references this integration pattern rather than providing shortcut configuration code directly. Users follow the linked documentation for setup.

Given the README's focus on end-user functionality over API documentation, developers seeking programmatic access should inspect the /controllers and /models directories directly for endpoint and data structure definitions.

Advanced Usage & Best Practices

Tag Hierarchy Design Plan taxonomy depth before importing. The nested tag system rewards upfront structure—shallow hierarchies (2-3 levels) typically balance specificity with navigability. Consider whether rollup behavior aligns with expected mental models; disabling it for certain high-cardinality tags may improve performance perception.

Import Strategy When migrating from browser exports, verify folder-to-tag mapping preserves semantic relationships. Deeply nested browser folders translate naturally, but flat exports may require manual restructuring. The README notes original folder structure preservation—test with a subset before bulk import.

Self-Hosting Security With local SQLite storage, implement filesystem backups independently. The cloud version handles this, but self-hosted instances require operational discipline. Consider placing /storage on a separate volume or implementing automated dumps.

PWA vs. Browser Usage The PWA install excels for frequent mobile access, but browser extension or bookmarklet capture remains more efficient for desktop workflows. Match interface choice to primary save context.

Performance at Scale With 1,173 stars suggesting real-world usage, monitor SQLite performance beyond tens of thousands of bookmarks. The README emphasizes "super fast and lightweight"—profile if response degrades, as the single-file database has practical limits under concurrent write load.

Comparison with Alternatives

Feature denho/faved Raindrop.io Pocket
Hosting Self-hosted or cloud Cloud-only Cloud-only
Nested Tags Yes, customizable Collections + tags (limited nesting) Tags only (flat)
Data Storage Local SQLite by default Cloud Cloud
License MIT (open source) Proprietary Proprietary
Browser Extension Chrome + bookmarklet Multi-browser Multi-browser
Import Chrome/Safari/Firefox/Edge + Raindrop/Pocket Limited Limited
Cost Free self-hosted; paid cloud Freemium Freemium

Raindrop.io offers superior cross-browser extension support and established mobile apps, but lacks denho/faved's hierarchical tag depth and self-hosting option. Pocket excels at content extraction and reading experience, but organizes poorly for structured collections. denho/faved trades polish for control—appropriate for users prioritizing data ownership and organizational precision over turnkey convenience.

FAQ

Is denho/faved free? Self-hosting is free under MIT License. A paid cloud version with managed infrastructure exists.

What are the system requirements for self-hosting? PHP 8, Apache, and standard extensions. SQLite requires no separate server.

Can I use denho/faved without browser extensions? Yes—the bookmarklet works across all browsers, and Apple Shortcuts enable mobile saving.

Is my data encrypted? Self-hosted data resides in local SQLite; encryption depends on your infrastructure. Cloud version encrypts data at rest.

How does nested tagging differ from folders? Tags support multiple parent paths and rollup inheritance; folders enforce single hierarchy. A bookmark can exist under multiple tag branches.

Can I contribute to development? The MIT-licensed repository accepts contributions. The TypeScript/React frontend and PHP backend are standard stacks.

What happens if I exceed SQLite limits? Practical limits apply for very large collections or high concurrency. The README does not specify thresholds—monitor and profile as needed.

Conclusion

denho/faved fills a specific niche: developers and technical users who need sophisticated bookmark organization without surrendering data control. Its nested tagging system genuinely differentiates from flat-tag alternatives, and the dual self-hosted/cloud model respects diverse operational constraints. The 1,173-star repository with recent commits indicates maintained, evolving software rather than abandoned code.

This tool suits users frustrated by browser bookmark limitations, concerned about SaaS longevity, or managing link collections complex enough to require hierarchical structure. It's less appropriate for those wanting zero-configuration mobile apps or social sharing features.

Evaluate against your organizational needs: if nested tags and local data matter, explore the repository, test the live demo, or read the documentation for detailed setup guidance.


For related self-hosted tooling coverage, see [INTERNAL_LINK: self-hosted productivity tools].

Advertisement

Commentaires 0

Aucun commentaire pour l'instant. Soyez le premier à réagir !

Laisser un commentaire

Advertisement