A lightweight, self‑hosted bookmark manager for local web servers (e.g. Synology, QNAP, UGreen, Raspberry Pi).
The application stores all data in a local JSON file – no database required. Images (favicons, previews) are stored in subfolders.
- Simple bookmark management via a nice web UI
- Automatically grabs title, description, and favicon from the URL
(if title or desciption is empty while creating or modifing the entry) - Drag & drop bookmarks between categories
- Optional preview images (manual or automated)
- Import / Export as Netscape Bookmark File
- Support for an external screenshot server (see
/server) to generate preview images automatically
This project is intentionally minimal and does not include security checks.
Use only in a trusted local network.
Important implications:
- URLs can point anywhere (including phishing sites)
- JavaScript in URLs will be executed when clicked
(e.g. javascript:alert('TEST'); as URL will show the message TEST.)
Do not expose this application to the public internet.
-
Copy all files from the
srcdirectory into any directory within your web server’s document root (e.g.htdocs,www). -
Ensure the following are writable by the web server:
uploads/directorybackups/directory
That’s it – no database setup required.
For multiple users, simply duplicate the entire application into separate folders.
You may secure each instance using HTTP Basic Authentication of your webserver.
Category titles consist of two parts separated by /:
TopCategory/SubCategory
- The prefix represents the top‑level category
- The suffix represents the subcategory
- When adding or modifying a bookmark, the current top category is automatically used as the prefix
- To move a subcategory, manually add the desired prefix (with the
/) when editing
- Bookmarks can be moved between subcategories via drag & drop onto the category
- Icons and preview images can be set manually while editing
- Simply drag & drop an image file onto the corresponding field
This project is provided as‑is, without warranty of any kind. Use at your own risk.
